Samsung VZW MB1 update master

file:adf2bcfafe47518c290e1399f343f7ee9098268d -> file:e04f536ec1d44f6980d909ec045dd7e8235d3334
--- a/arch/arm/configs/m2_att_defconfig
+++ b/arch/arm/configs/m2_att_defconfig
@@ -553,6 +553,7 @@ CONFIG_SEC_DEBUG=y
CONFIG_SEC_DEBUG_SCHED_LOG=y
# CONFIG_SEC_DEBUG_IRQ_EXIT_LOG is not set
CONFIG_SEC_DEBUG_SUBSYS=y
+CONFIG_SEC_DEBUG_DOUBLE_FREE=y
CONFIG_CRYPTO_SHA256=y
CONFIG_CRYPTO_TWOFISH=y
CONFIG_CRYPTO_DEV_QCRYPTO=m
file:187dc133a7a6a477acc703f49df5e8aeff4c1ccb -> file:21b5af41fd260714d54b765ebd25417daa3d861d
--- a/arch/arm/configs/m2_att_eng_defconfig
+++ b/arch/arm/configs/m2_att_eng_defconfig
@@ -558,6 +558,7 @@ CONFIG_SEC_SSR_DUMP=y
CONFIG_SEC_DEBUG_SCHED_LOG=y
CONFIG_SEC_DEBUG_IRQ_EXIT_LOG=y
CONFIG_SEC_DEBUG_SUBSYS=y
+CONFIG_SEC_DEBUG_DOUBLE_FREE=y
CONFIG_CRYPTO_SHA256=y
CONFIG_CRYPTO_TWOFISH=y
CONFIG_CRYPTO_DEV_QCRYPTO=m
file:4af8638cb7b074b2cd1bc4e0349f209d80f3608a -> file:c4386c287a1e3d1e617e391000e98caec4415629
--- a/arch/arm/configs/m2_dcm_defconfig
+++ b/arch/arm/configs/m2_dcm_defconfig
@@ -51,6 +51,7 @@ CONFIG_MSM_IPC_ROUTER_SMD_XPRT=y
CONFIG_MSM_PIL_QDSP6V4=y
CONFIG_MSM_PIL_RIVA=y
CONFIG_MSM_PIL_TZAPPS=y
+CONFIG_MSM_PIL_VIDC=y
CONFIG_MSM_SUBSYSTEM_RESTART=y
CONFIG_MSM_MODEM_8960=y
CONFIG_MSM_LPASS_8960=y
@@ -341,6 +342,7 @@ CONFIG_MFD_PM8XXX_BATT_ALARM=y
CONFIG_WCD9310_CODEC=y
CONFIG_REGULATOR_PM8XXX=y
CONFIG_REGULATOR_GPIO=y
+CONFIG_REGULATOR_MAX8952=y
CONFIG_MEDIA_SUPPORT=y
CONFIG_VIDEO_DEV=y
# CONFIG_MEDIA_TUNER_CUSTOMISE is not set
@@ -474,6 +476,7 @@ CONFIG_USB_DUN_SUPPORT=y
CONFIG_USB_ANDROID_SAMSUNG_COMPOSITE=y
# CONFIG_USB_G_ANDROID_SAMSUNG_DTF is not set
CONFIG_MMC=y
+CONFIG_MMC_CPRM=y
# CONFIG_MMC_PERF_PROFILING is not set
CONFIG_MMC_UNSAFE_RESUME=y
CONFIG_MMC_CLKGATE=y
@@ -530,7 +533,6 @@ CONFIG_MAGIC_SYSRQ=y
CONFIG_DEBUG_KERNEL=y
CONFIG_LOCKUP_DETECTOR=y
CONFIG_DEBUG_FS=y
-# CONFIG_FTRACE is not set
# CONFIG_BINARY_PRINTF is not set
# CONFIG_SCHED_DEBUG is not set
CONFIG_TIMER_STATS=y
@@ -541,6 +543,7 @@ CONFIG_DEBUG_SPINLOCK_SLEEP=y
CONFIG_DEBUG_INFO=y
# CONFIG_DEBUG_MEMORY_INIT is not set
CONFIG_DEBUG_LIST=y
+CONFIG_SCHED_TRACER=y
# CONFIG_DEBUG_PAGEALLOC is not set
CONFIG_ENABLE_DEFAULT_TRACERS=y
# CONFIG_DYNAMIC_DEBUG is not set
file:a3dca0f8aa1d9227761b3b9b2ac239e334100cea -> file:0edecc4776b82bb0a64b7ad0c164b32891e0ab00
--- a/arch/arm/configs/m2_dcm_eng_defconfig
+++ b/arch/arm/configs/m2_dcm_eng_defconfig
@@ -50,6 +50,7 @@ CONFIG_MSM_IPC_ROUTER_SMD_XPRT=y
CONFIG_MSM_PIL_QDSP6V4=y
CONFIG_MSM_PIL_RIVA=y
CONFIG_MSM_PIL_TZAPPS=y
+CONFIG_MSM_PIL_VIDC=y
CONFIG_MSM_SUBSYSTEM_RESTART=y
CONFIG_MSM_MODEM_8960=y
CONFIG_MSM_LPASS_8960=y
@@ -340,6 +341,7 @@ CONFIG_MFD_PM8XXX_BATT_ALARM=y
CONFIG_WCD9310_CODEC=y
CONFIG_REGULATOR_PM8XXX=y
CONFIG_REGULATOR_GPIO=y
+CONFIG_REGULATOR_MAX8952=y
CONFIG_MEDIA_SUPPORT=y
CONFIG_VIDEO_DEV=y
# CONFIG_MEDIA_TUNER_CUSTOMISE is not set
@@ -473,6 +475,7 @@ CONFIG_USB_DUN_SUPPORT=y
CONFIG_USB_ANDROID_SAMSUNG_COMPOSITE=y
# CONFIG_USB_G_ANDROID_SAMSUNG_DTF is not set
CONFIG_MMC=y
+CONFIG_MMC_CPRM=y
CONFIG_MMC_PERF_PROFILING=y
CONFIG_MMC_UNSAFE_RESUME=y
CONFIG_MMC_CLKGATE=y
@@ -539,6 +542,7 @@ CONFIG_DEBUG_SPINLOCK_SLEEP=y
CONFIG_DEBUG_INFO=y
CONFIG_DEBUG_MEMORY_INIT=y
CONFIG_DEBUG_LIST=y
+CONFIG_SCHED_TRACER=y
CONFIG_FAULT_INJECTION=y
CONFIG_FAILSLAB=y
CONFIG_FAIL_PAGE_ALLOC=y
@@ -559,6 +563,7 @@ CONFIG_SEC_SSR_DUMP=y
CONFIG_SEC_DEBUG_SCHED_LOG=y
CONFIG_SEC_DEBUG_IRQ_EXIT_LOG=y
CONFIG_SEC_DEBUG_SUBSYS=y
+CONFIG_SEC_DEBUG_DOUBLE_FREE=y
CONFIG_CRYPTO_SHA256=y
CONFIG_CRYPTO_TWOFISH=y
CONFIG_CRYPTO_DEV_QCRYPTO=m
file:8b83c9063c26e29675742ad62bee3b48daab442e -> file:dedaa5e1f449b6337a8a0417db06b5070cc6b62c
--- a/arch/arm/configs/msm7627a-perf_defconfig
+++ b/arch/arm/configs/msm7627a-perf_defconfig
@@ -191,6 +191,7 @@ CONFIG_MD=y
CONFIG_BLK_DEV_DM=y
CONFIG_DM_CRYPT=y
CONFIG_NETDEVICES=y
+CONFIG_TUN=y
CONFIG_NET_ETHERNET=y
CONFIG_SMC91X=y
CONFIG_SMSC911X=y
@@ -282,6 +283,7 @@ CONFIG_USB_STORAGE_KARMA=y
CONFIG_USB_STORAGE_CYPRESS_ATACB=y
CONFIG_USB_EHSET_TEST_FIXTURE=y
CONFIG_USB_GADGET=y
+CONFIG_USB_GADGET_VBUS_DRAW=500
CONFIG_USB_GADGET_MSM_72K=y
CONFIG_USB_G_ANDROID=y
CONFIG_RMNET_SMD_CTL_CHANNEL="DATA40_CNTL"
file:d9c9c5124e0d02850710b62bbd02190d0033937c -> file:6579d931c0b946085cfe370e5ac1010c99ad41c6
--- a/arch/arm/configs/msm7627a_defconfig
+++ b/arch/arm/configs/msm7627a_defconfig
@@ -191,6 +191,7 @@ CONFIG_MD=y
CONFIG_BLK_DEV_DM=y
CONFIG_DM_CRYPT=y
CONFIG_NETDEVICES=y
+CONFIG_TUN=y
CONFIG_NET_ETHERNET=y
CONFIG_SMC91X=y
CONFIG_SMSC911X=y
@@ -284,6 +285,7 @@ CONFIG_USB_STORAGE_KARMA=y
CONFIG_USB_STORAGE_CYPRESS_ATACB=y
CONFIG_USB_EHSET_TEST_FIXTURE=y
CONFIG_USB_GADGET=y
+CONFIG_USB_GADGET_VBUS_DRAW=500
CONFIG_USB_GADGET_MSM_72K=y
CONFIG_USB_G_ANDROID=y
CONFIG_RMNET_SMD_CTL_CHANNEL="DATA40_CNTL"
file:d1e73dc4483488f8d3f47bb3a96d752bcd68f6cf -> file:9803ef9dd2155496e34b23d2079f40be18cb3806
--- a/arch/arm/configs/msm7630-perf_defconfig
+++ b/arch/arm/configs/msm7630-perf_defconfig
@@ -42,6 +42,7 @@ CONFIG_MSM_MEMORY_LOW_POWER_MODE_SUSPEND
CONFIG_MSM_IDLE_WAIT_ON_MODEM=2000
# CONFIG_MSM_JTAG_V7 is not set
CONFIG_MSM_STANDALONE_POWER_COLLAPSE=y
+CONFIG_MSM_MULTIMEDIA_USE_ION=y
CONFIG_NO_HZ=y
CONFIG_HIGH_RES_TIMERS=y
CONFIG_PREEMPT=y
@@ -207,6 +208,7 @@ CONFIG_MD=y
CONFIG_BLK_DEV_DM=y
CONFIG_DM_CRYPT=y
CONFIG_NETDEVICES=y
+CONFIG_TUN=y
CONFIG_DUMMY=y
CONFIG_NET_ETHERNET=y
CONFIG_SMC91X=y
@@ -268,6 +270,8 @@ CONFIG_WEBCAM_OV9726=y
CONFIG_MT9E013=y
CONFIG_MSM_GEMINI=y
CONFIG_RADIO_TAVARUA=y
+CONFIG_ION=y
+CONFIG_ION_MSM=y
CONFIG_MSM_KGSL=y
CONFIG_VIDEO_OUTPUT_CONTROL=y
CONFIG_FB=y
@@ -279,6 +283,7 @@ CONFIG_FB_MSM_LOGO=y
CONFIG_FB_MSM_TRIPLE_BUFFER=y
CONFIG_FB_MSM_MDP40=y
CONFIG_FB_MSM_OVERLAY=y
+CONFIG_FB_MSM_NO_MDP_PIPE_CTRL=y
CONFIG_FB_MSM_TRY_MDDI_CATCH_LCDC_PRISM=y
CONFIG_FB_MSM_HDMI_ADV7520_PANEL=y
CONFIG_BACKLIGHT_LCD_SUPPORT=y
@@ -316,6 +321,7 @@ CONFIG_USB_STORAGE_KARMA=y
CONFIG_USB_STORAGE_CYPRESS_ATACB=y
CONFIG_USB_EHSET_TEST_FIXTURE=y
CONFIG_USB_GADGET=y
+CONFIG_USB_GADGET_VBUS_DRAW=500
CONFIG_USB_GADGET_MSM_72K=y
CONFIG_USB_G_ANDROID=y
CONFIG_RMNET_SMD_CTL_CHANNEL="DATA40_CNTL"
file:e0f0694aa266bf7f94addafa57e38191b78f96b5 -> file:be5b20f2e081066bff6cc3edb5518d3f99912b2a
--- a/arch/arm/configs/msm7630_defconfig
+++ b/arch/arm/configs/msm7630_defconfig
@@ -42,6 +42,7 @@ CONFIG_MSM_MEMORY_LOW_POWER_MODE_SUSPEND
CONFIG_MSM_IDLE_WAIT_ON_MODEM=2000
# CONFIG_MSM_JTAG_V7 is not set
CONFIG_MSM_STANDALONE_POWER_COLLAPSE=y
+CONFIG_MSM_MULTIMEDIA_USE_ION=y
CONFIG_STRICT_MEMORY_RWX=y
CONFIG_NO_HZ=y
CONFIG_HIGH_RES_TIMERS=y
@@ -208,6 +209,7 @@ CONFIG_MD=y
CONFIG_BLK_DEV_DM=y
CONFIG_DM_CRYPT=y
CONFIG_NETDEVICES=y
+CONFIG_TUN=y
CONFIG_DUMMY=y
CONFIG_NET_ETHERNET=y
CONFIG_SMC91X=y
@@ -270,6 +272,8 @@ CONFIG_WEBCAM_OV9726=y
CONFIG_MT9E013=y
CONFIG_MSM_GEMINI=y
CONFIG_RADIO_TAVARUA=y
+CONFIG_ION=y
+CONFIG_ION_MSM=y
CONFIG_MSM_KGSL=y
CONFIG_VIDEO_OUTPUT_CONTROL=y
CONFIG_FB=y
@@ -318,6 +322,7 @@ CONFIG_USB_STORAGE_KARMA=y
CONFIG_USB_STORAGE_CYPRESS_ATACB=y
CONFIG_USB_EHSET_TEST_FIXTURE=y
CONFIG_USB_GADGET=y
+CONFIG_USB_GADGET_VBUS_DRAW=500
CONFIG_USB_GADGET_MSM_72K=y
CONFIG_USB_G_ANDROID=y
CONFIG_RMNET_SMD_CTL_CHANNEL="DATA40_CNTL"
file:b21247ca785853ea2a439f01e884e674fc0d06aa -> file:ab67eca4bb67e5ba0ac8e39da50efc8992eadf8a
--- a/arch/arm/configs/msm8660-perf_defconfig
+++ b/arch/arm/configs/msm8660-perf_defconfig
@@ -84,6 +84,7 @@ CONFIG_PREEMPT=y
CONFIG_AEABI=y
CONFIG_HIGHMEM=y
CONFIG_VMALLOC_RESERVE=0x19000000
+CONFIG_COMPACTION=y
CONFIG_CP_ACCESS=y
CONFIG_CPU_FREQ=y
CONFIG_CPU_FREQ_GOV_POWERSAVE=y
@@ -251,6 +252,7 @@ CONFIG_DM_CRYPT=y
CONFIG_DM_UEVENT=y
CONFIG_NETDEVICES=y
CONFIG_DUMMY=y
+CONFIG_TUN=y
CONFIG_NET_ETHERNET=y
CONFIG_SMC91X=y
CONFIG_SMC911X=y
file:540ed2a1e88a2972935ea60b464ae846bcb81721 -> file:efd575027d011c18ffe84022560aeebe55f020ea
--- a/arch/arm/configs/msm8660_defconfig
+++ b/arch/arm/configs/msm8660_defconfig
@@ -82,6 +82,7 @@ CONFIG_PREEMPT=y
CONFIG_AEABI=y
CONFIG_HIGHMEM=y
CONFIG_VMALLOC_RESERVE=0x19000000
+CONFIG_COMPACTION=y
CONFIG_CP_ACCESS=y
CONFIG_CPU_FREQ=y
CONFIG_CPU_FREQ_GOV_POWERSAVE=y
@@ -250,6 +251,7 @@ CONFIG_DM_CRYPT=y
CONFIG_DM_UEVENT=y
CONFIG_NETDEVICES=y
CONFIG_DUMMY=y
+CONFIG_TUN=y
CONFIG_NET_ETHERNET=y
CONFIG_SMC91X=y
CONFIG_SMC911X=y
file:b4a564d07710d719cca040e4aa3883b6c2eae088 -> file:847a20b4f1250771769bd9f5e78a5f7d8bc7b9da
--- a/arch/arm/configs/msm8960-perf_defconfig
+++ b/arch/arm/configs/msm8960-perf_defconfig
@@ -246,6 +246,7 @@ CONFIG_BLK_DEV_DM=y
CONFIG_DM_CRYPT=y
CONFIG_NETDEVICES=y
CONFIG_DUMMY=y
+CONFIG_TUN=y
CONFIG_NET_ETHERNET=y
CONFIG_SMC91X=y
CONFIG_SMC911X=y
@@ -456,3 +457,4 @@ CONFIG_CRYPTO_DEV_QCRYPTO=m
CONFIG_CRYPTO_DEV_QCE=m
CONFIG_CRYPTO_DEV_QCEDEV=m
CONFIG_CRC_CCITT=y
+CONFIG_WCNSS_MEM_PRE_ALLOC=y
file:4e5e3f2bd075d9d03291b403aaa9ee56d167d0dc -> file:a09223a1ce76c9bbe062062acaf847b17e163fbe
--- a/arch/arm/configs/msm8960_defconfig
+++ b/arch/arm/configs/msm8960_defconfig
@@ -250,6 +250,7 @@ CONFIG_BLK_DEV_DM=y
CONFIG_DM_CRYPT=y
CONFIG_NETDEVICES=y
CONFIG_DUMMY=y
+CONFIG_TUN=y
CONFIG_NET_ETHERNET=y
CONFIG_SMC91X=y
CONFIG_SMC911X=y
@@ -471,3 +472,4 @@ CONFIG_CRYPTO_DEV_QCRYPTO=m
CONFIG_CRYPTO_DEV_QCE=m
CONFIG_CRYPTO_DEV_QCEDEV=m
CONFIG_CRC_CCITT=y
+CONFIG_WCNSS_MEM_PRE_ALLOC=y
file:97911da2bd39758e0e1ffae332a0b06d34b63d77 -> file:d981c1b95a415581455ed5e194f94d7a1ebe2be4
--- a/arch/arm/include/asm/spinlock.h
+++ b/arch/arm/include/asm/spinlock.h
@@ -37,11 +37,11 @@ extern int msm_krait_need_wfe_fixup;
#endif
/*
- * The fixup involves disabling FIQs during execution of the WFE instruction.
- * This could potentially lead to deadlock if a thread is trying to acquire a
- * spinlock which is being released from an FIQ. This should not be a problem
- * because FIQs are handled by the secure environment and do not directly
- * manipulate spinlocks.
+ * The fixup involves disabling FIQs during execution of the WFE instruction.
+ * This could potentially lead to deadlock if a thread is trying to acquire a
+ * spinlock which is being released from an FIQ. This should not be a problem
+ * because FIQs are handled by the secure environment and do not directly
+ * manipulate spinlocks.
*/
#ifdef CONFIG_MSM_KRAIT_WFE_FIXUP
#define WFE_SAFE(fixup, tmp) \
@@ -49,7 +49,7 @@ extern int msm_krait_need_wfe_fixup;
" cmp " fixup ", #0\n" \
" wfeeq\n" \
" beq 10f\n" \
-" cpsid f\n" \
+" cpsid f\n" \
" mrc p15, 7, " fixup ", c15, c0, 5\n" \
" bic " fixup ", " fixup ", #0x10000\n" \
" mcr p15, 7, " fixup ", c15, c0, 5\n" \
file:d8b1aa02c3a0281985b0b159221227bf0379cbae -> file:dfe0834bcd6c380803016cafc773a9cd8a844487
--- a/arch/arm/kernel/entry-armv.S
+++ b/arch/arm/kernel/entry-armv.S
@@ -1044,7 +1044,7 @@ __kuser_helper_end:
* SP points to a minimal amount of processor-private memory, the address
* of which is copied into r0 for the mode specific abort handler.
*/
- .macro vector_stub, name, mode, fixup, correction=0
+ .macro vector_stub, name, mode, fixup, correction=0
.align 5
vector_\name:
@@ -1073,18 +1073,18 @@ vector_\name:
and lr, lr, #0x0f
THUMB( adr r0, 1f )
THUMB( ldr lr, [r0, lr, lsl #2] )
- .if \fixup
+ .if \fixup
#ifdef CONFIG_MSM_KRAIT_WFE_FIXUP
- ldr r0, .krait_fixup
- ldr r0, [r0]
- cmp r0, #0
- beq 10f
- mrc p15, 7, r0, c15, c0, 5
- orr r0, r0, #0x10000
- mcr p15, 7, r0, c15, c0, 5
-10: isb
+ ldr r0, .krait_fixup
+ ldr r0, [r0]
+ cmp r0, #0
+ beq 10f
+ mrc p15, 7, r0, c15, c0, 5
+ orr r0, r0, #0x10000
+ mcr p15, 7, r0, c15, c0, 5
+10: isb
#endif
- .endif
+ .endif
mov r0, sp
ARM( ldr lr, [pc, lr, lsl #2] )
movs pc, lr @ branch to handler in SVC mode
@@ -1100,7 +1100,7 @@ __stubs_start:
/*
* Interrupt dispatcher
*/
- vector_stub irq, IRQ_MODE, 1, 4
+ vector_stub irq, IRQ_MODE, 1, 4
.long __irq_usr @ 0 (USR_26 / USR_32)
.long __irq_invalid @ 1 (FIQ_26 / FIQ_32)
@@ -1123,7 +1123,7 @@ __stubs_start:
* Data abort dispatcher
* Enter in ABT mode, spsr = USR CPSR, lr = USR PC
*/
- vector_stub dabt, ABT_MODE, 0, 8
+ vector_stub dabt, ABT_MODE, 0, 8
.long __dabt_usr @ 0 (USR_26 / USR_32)
.long __dabt_invalid @ 1 (FIQ_26 / FIQ_32)
@@ -1146,7 +1146,7 @@ __stubs_start:
* Prefetch abort dispatcher
* Enter in ABT mode, spsr = USR CPSR, lr = USR PC
*/
- vector_stub pabt, ABT_MODE, 0, 4
+ vector_stub pabt, ABT_MODE, 0, 4
.long __pabt_usr @ 0 (USR_26 / USR_32)
.long __pabt_invalid @ 1 (FIQ_26 / FIQ_32)
@@ -1169,7 +1169,7 @@ __stubs_start:
* Undef instr entry dispatcher
* Enter in UND mode, spsr = SVC/USR CPSR, lr = SVC/USR PC
*/
- vector_stub und, UND_MODE, 0
+ vector_stub und, UND_MODE, 0
.long __und_usr @ 0 (USR_26 / USR_32)
.long __und_invalid @ 1 (FIQ_26 / FIQ_32)
@@ -1223,7 +1223,7 @@ vector_addrexcptn:
.LCvswi:
.word vector_swi
.krait_fixup:
- .word msm_krait_need_wfe_fixup
+ .word msm_krait_need_wfe_fixup
.globl __stubs_end
__stubs_end:
file:d5f102d5a9048287a0023a57426e797bc8bf5239 -> file:c6028eee6c205b70c7e604e037c1fe755b8b33aa
--- a/arch/arm/mach-msm/board-8960-camera.c
+++ b/arch/arm/mach-msm/board-8960-camera.c
@@ -167,6 +167,15 @@ static struct msm_gpiomux_config msm8960
},
},
#endif
+#if defined(CONFIG_MACH_INFINITE)/* >=REV04 */
+ {
+ .gpio = GPIO_MSM_FLASH_CNTL_EN2,
+ .settings = {
+ [GPIOMUX_ACTIVE] = &cam_settings[2],
+ [GPIOMUX_SUSPENDED] = &cam_settings[0],
+ },
+ },
+#endif
{
.gpio = GPIO_MSM_FLASH_NOW,
.settings = {
@@ -222,7 +231,7 @@ static struct msm_gpiomux_config msm8960
[GPIOMUX_SUSPENDED] = &cam_settings[0],
},
},
-#if defined(CONFIG_MACH_STRETTO)
+#if defined(CONFIG_MACH_STRETTO) || defined(CONFIG_MACH_INFINITE)
{
.gpio = GPIO_CAM_MCLK2,
.settings = {
@@ -637,7 +646,7 @@ static struct msm_camera_gpio_conf msm_8
};
#endif
-static struct regulator *l11, *l12, *l18, *l29, *l28, *isp_core;
+static struct regulator *l8,*l11, *l12,*l16, *l18, *l29,*l30, *l28, *isp_core;
/* CAM power
CAM_SENSOR_A_2.8 : GPIO_CAM_A_EN(GPIO 46)
CAM_SENSOR_IO_1.8 : VREG_L29 : l29
@@ -803,12 +812,12 @@ static void cam_ldo_power_off(int mode)
gpio_set_value_cansleep(GPIO_CAM_CORE_EN, 0);
}
-#elif defined(CONFIG_ISX012) && defined(CONFIG_SR030PC50) /* ApexQ*/
+#elif defined(CONFIG_ISX012) && defined(CONFIG_SR030PC50) /* KonaLTE*/
static void cam_ldo_power_on(int mode)
{
int ret = 0;
- printk(KERN_DEBUG "[%s : %d] %s CAMERA POWER ON!!\n",
+ printk(KERN_DEBUG "[%s : %d] %s KONA CAMERA POWER ON!!\n",
__func__, __LINE__, mode ? "FRONT" : "REAR");
/*5M Core 1.2V - CAM_ISP_CORE_1P2*/
@@ -821,70 +830,80 @@ static void cam_ldo_power_on(int mode)
ret = regulator_enable(l29);
if (ret)
cam_err("error enabling regulator 8921_lvs5\n");
+
+ printk(KERN_DEBUG "check CAM_SENSOR_IO_1P8 : %d\n", ret);
/*Sensor AVDD 2.8V - CAM_SENSOR_A2P8 */
- gpio_set_value_cansleep(GPIO_CAM_A_EN, 1);
- ret = gpio_get_value(GPIO_CAM_A_EN);
- printk(KERN_DEBUG "check GPIO_CAM_A_EN : %d\n", ret);
-
-/*VT core 1.2V - CAM_DVDD_1P2V*/
- l18 = regulator_get(NULL, "cam_vio");
- ret = regulator_set_voltage(l18, 1800000, 1800000);
+ l16 = regulator_get(NULL, "8921_l16");
+ ret = regulator_set_voltage(l16, 2800000, 2800000);
if (ret)
cam_err("error setting voltage\n");
- ret = regulator_enable(l18);
+ ret = regulator_enable(l16);
if (ret)
cam_err("error enabling regulator\n");
+
+/*VT core 1.5V - CAM_DVDD_1P5V*/
+ l30 = regulator_get(NULL, "8921_lvs6");
+ ret = regulator_enable(l30);
+ if (ret)
+ cam_err("error enabling regulator 8921_lv6\n");
usleep(20);
+#if 1
/*Sensor AF 2.8V -CAM_AF_2P8 */
if (!mode) {
- l11 = regulator_get(NULL, "8921_l11");
- ret = regulator_set_voltage(l11, 2800000, 2800000);
+ l8 = regulator_get(NULL, "8921_l8");
+ ret = regulator_set_voltage(l8, 2800000, 2800000);
if (ret)
cam_err("error setting voltage\n");
- ret = regulator_enable(l11);
+ ret = regulator_enable(l8);
if (ret)
cam_err("error enabling regulator\n");
}
- }
+ printk(KERN_DEBUG "check CAM_AF_2P8 : %d\n", ret);
+#endif
+}
static void cam_ldo_power_off(int mode)
{
int ret = 0;
- printk(KERN_DEBUG "[%s : %d] %s CAMERA POWER OFF!!\n",
+ printk(KERN_DEBUG "[%s : %d] %s KONA CAMERA POWER OFF!!\n",
__func__, __LINE__, mode ? "FRONT" : "REAR");
-
+#if 1
/*Sensor AF 2.8V -CAM_AF_2P8 */
if (!mode) {
- if (l11) {
- ret = regulator_disable(l11);
+ if (l8) {
+ ret = regulator_disable(l8);
if (ret)
cam_err("error disabling regulator\n");
}
}
-
-/*VT core 1.2 - CAM_DVDD_1P2V*/
- if (l18) {
- ret = regulator_disable(l18);
+#endif
+/*VT core 1.5 - CAM_DVDD_1P5V*/
+ if (l30) {
+ ret = regulator_disable(l30);
if (ret)
- cam_err("error disabling regulator\n");
+ cam_err(" l30 error disabling regulator\n");
}
/*Sensor AVDD 2.8V - CAM_SENSOR_A2P8 */
- gpio_set_value_cansleep(GPIO_CAM_A_EN, 0);
-
+ if (l16) {
+ ret = regulator_disable(l16);
+ if (ret)
+ cam_err(" l16 error disabling regulator\n");
+ }
/*Sensor IO 1.8V -CAM_SENSOR_IO_1P8 */
if (l29) {
ret = regulator_disable(l29);
if (ret)
- cam_err("error disabling regulator\n");
+ cam_err(" l29 error disabling regulator\n");
}
/*5M Core 1.2V - CAM_ISP_CORE_1P2*/
gpio_set_value_cansleep(GPIO_CAM_CORE_EN, 0);
+ printk(KERN_DEBUG "OFF CAM_CORE_EN \n");
}
#elif defined(CONFIG_ISX012) && defined(CONFIG_S5K8AAY) /* JAGUAR */
@@ -1164,11 +1183,13 @@ static void cam_ldo_power_on(int mode)
printk(KERN_DEBUG "check FLASH_LED_UNLOCK : %d\n", ret);
}
#else
- gpio_set_value_cansleep(PM8921_MPP_PM_TO_SYS
- (PMIC_MPP_FLASH_LED_UNLOCK), 1);
- ret = gpio_get_value_cansleep(PM8921_MPP_PM_TO_SYS
- (PMIC_MPP_FLASH_LED_UNLOCK));
- printk(KERN_DEBUG "check FLASH_LED_UNLOCK : %d\n", ret);
+ if (!mode && torchonoff == 0) {
+ gpio_set_value_cansleep(PM8921_MPP_PM_TO_SYS
+ (PMIC_MPP_FLASH_LED_UNLOCK), 1);
+ ret = gpio_get_value_cansleep(PM8921_MPP_PM_TO_SYS
+ (PMIC_MPP_FLASH_LED_UNLOCK));
+ printk(KERN_DEBUG "check FLASH_LED_UNLOCK : %d\n", ret);
+ }
#endif
/*5M Core 1.2V - CAM_ISP_CORE_1P2*/
@@ -1226,8 +1247,10 @@ static void cam_ldo_power_off(int mode)
(PMIC_MPP_FLASH_LED_UNLOCK), 0);
}
#else
- gpio_set_value_cansleep(PM8921_MPP_PM_TO_SYS
- (PMIC_MPP_FLASH_LED_UNLOCK), 0);
+ if (!mode && torchonoff == 0) {
+ gpio_set_value_cansleep(PM8921_MPP_PM_TO_SYS
+ (PMIC_MPP_FLASH_LED_UNLOCK), 0);
+ }
#endif
/*Sensor AF 2.8V -CAM_AF_2P8 */
@@ -1784,7 +1807,11 @@ static void cam_ldo_power_off(int mode)
}
#elif defined(CONFIG_S5C73M3) && defined(CONFIG_S5K6A3YX) /* D2 */
+#if defined(CONFIG_MACH_M2_DCM)
+static int vddCore = 1230000;
+#else
static int vddCore = 1150000;
+#endif
static bool isVddCoreSet;
static u8 gpio_cam_flash_sw;
static u8 pmic_gpio_msm_flash_cntl_en;
@@ -1792,12 +1819,29 @@ static bool isFlashCntlEn;
static void cam_set_isp_core(int level)
{
+
+#if defined(CONFIG_MACH_M2_DCM)
+ if (level == 1000000) {
+ pr_err("Change core voltage\n");
+ vddCore = 1060000;
+ } else if (level == 1050000) {
+ pr_err("Change core voltage\n");
+ vddCore = 1110000;
+ } else if (level == 1100000) {
+ pr_err("Change core voltage\n");
+ vddCore = 1170000;
+ } else if (level == 1150000) {
+ pr_err("Change core voltage\n");
+ vddCore = 1230000;
+ } else
+ vddCore = level;
+#else
if (level == 1050000) {
pr_err("Change core voltage\n");
vddCore = 1100000;
} else
vddCore = level;
-
+#endif
isVddCoreSet = true;
pr_err("ISP CORE = %d\n", vddCore);
}
@@ -1921,7 +1965,23 @@ static void cam_ldo_power_on(int mode, i
cam_err("error enabling regulator.");
} else
gpio_set_value_cansleep(CAM_CORE_EN, 1);
-#elif defined(CONFIG_MACH_M2_DCM) || defined(CONFIG_MACH_K2_KDI)
+#elif defined(CONFIG_MACH_M2_DCM)
+ if (system_rev >= BOARD_REV03) {
+ printk(KERN_DEBUG "[s5c73m3] dcm check vddCore : %d\n",
+ vddCore);
+
+ isp_core = regulator_get(NULL, "cam_isp_core");
+ ret = regulator_set_voltage(isp_core,
+ vddCore, vddCore);
+ if (ret)
+ cam_err("error setting voltage\n");
+
+ ret = regulator_enable(isp_core);
+ if (ret)
+ cam_err("error enabling regulator.");
+ } else
+ gpio_set_value_cansleep(gpio_rev(CAM_CORE_EN), 1);
+#elif defined(CONFIG_MACH_K2_KDI)
gpio_set_value_cansleep(gpio_rev(CAM_CORE_EN), 1);
#else
gpio_set_value_cansleep(CAM_CORE_EN, 1);
@@ -2066,7 +2126,16 @@ static void cam_ldo_power_off(int mode)
if (ret)
cam_err("error disabling regulator");
regulator_put(isp_core);
-#elif defined(CONFIG_MACH_M2_DCM) || defined(CONFIG_MACH_K2_KDI)
+#elif defined(CONFIG_MACH_M2_DCM)
+ if (system_rev >= BOARD_REV03){
+ ret = regulator_disable(isp_core);
+ if (ret)
+ cam_err("error disabling regulator");
+ regulator_put(isp_core);
+ }
+ else
+ gpio_set_value_cansleep(gpio_rev(CAM_CORE_EN), 0);
+#elif defined(CONFIG_MACH_K2_KDI)
gpio_set_value_cansleep(gpio_rev(CAM_CORE_EN), 0);
#else
gpio_set_value_cansleep(CAM_CORE_EN, 0);
@@ -2247,11 +2316,15 @@ struct platform_device msm8960_camera_se
#ifdef CONFIG_ISX012
static struct msm_camera_sensor_flash_data flash_isx012 = {
- .flash_type = MSM_CAMERA_FLASH_LED,
+#if defined(CONFIG_MACH_KONA)
+ .flash_type = MSM_CAMERA_FLASH_NONE,
+#else
+ .flash_type = MSM_CAMERA_FLASH_LED,
+#endif
};
static struct msm_camera_sensor_platform_info sensor_board_info_isx012 = {
- .mount_angle = 90,
+ .mount_angle = 90,
.sensor_reset = GPIO_CAM1_RST_N,
#ifdef CONFIG_MACH_AEGIS2
.sensor_stby = PM8921_GPIO_PM_TO_SYS(PMIC_GPIO_MAIN_CAM_STBY),
@@ -2357,9 +2430,12 @@ static struct msm_camera_sensor_flash_da
static struct msm_camera_sensor_platform_info sensor_board_info_s5k5ccgx = {
.sensor_reset = GPIO_CAM1_RST_N,
-#ifdef CONFIG_MACH_JASPER
+#if defined(CONFIG_MACH_JASPER)
.mount_angle = 90,
.sensor_stby = PM8921_GPIO_PM_TO_SYS(PMIC_GPIO_MAIN_CAM_STBY),
+#elif defined(CONFIG_MACH_ESPRESSO_VZW)
+ .mount_angle = 90,
+ .sensor_stby = GPIO_MAIN_CAM_STBY,
#else
.mount_angle = 0,
.sensor_stby = GPIO_MAIN_CAM_STBY,
@@ -2394,7 +2470,7 @@ static struct msm_camera_sensor_flash_da
};
static struct msm_camera_sensor_platform_info sensor_board_info_sr030pc50 = {
-#if defined(CONFIG_MACH_ESPRESSO_VZW) || defined(CONFIG_MACH_ESPRESSO_ATT) \
+#if defined(CONFIG_MACH_ESPRESSO_ATT) \
|| defined(CONFIG_MACH_ESPRESSO10_VZW) \
|| defined(CONFIG_MACH_ESPRESSO10_SPR) \
|| defined(CONFIG_MACH_ESPRESSO10_ATT) \
@@ -2628,7 +2704,11 @@ static ssize_t front_camera_type_show(st
#elif defined(CONFIG_S5K6A3YX)
char cam_type[] = "SLSI_S5K6A3YX\n";
#elif defined(CONFIG_DB8131M)
+#if defined(CONFIG_MACH_INFINITE)
+ char cam_type[] = "DB8131A\n";
+#else
char cam_type[] = "DUB_DB8131M\n";
+#endif
#elif defined(CONFIG_SR030PC50)
char cam_type[] = "SILICON_SR030PC50\n";
#else
@@ -2669,7 +2749,11 @@ static ssize_t front_camera_firmware_sho
#elif defined(CONFIG_S5K6A3YX)
char *cam_fw[] = {"S5K6A3", "S5K6A3"}; /*char cam_fw[] = "S5K6A3YX\n";*/
#elif defined(CONFIG_DB8131M)
+#if defined(CONFIG_MACH_INFINITE)
+ char cam_fw[] = "DB8131A\n";
+#else
char cam_fw[] = "DB8131M\n";
+#endif
#elif defined(CONFIG_SR030PC50)
char cam_fw[] = "SR030PC50\n";
#else
@@ -2763,6 +2847,56 @@ static ssize_t cameraflash_file_cmd_stor
}
#endif
+#if defined(CONFIG_MACH_EXPRESS)
+ if (system_rev >= BOARD_REV05) {
+ if (value == 0) {
+ pr_err("[Torch flash]OFF\n");
+
+ gpio_set_value_cansleep(gpio_flash_en, 0);
+
+ if ((system_rev == BOARD_REV05)\
+ || (system_rev == BOARD_REV06))
+ gpio_set_value_cansleep(
+ gpio_flash_set, 0);
+
+ torchonoff = 0;
+
+ } else {
+ pr_err("[Torch flash]ON\n");
+ for (i = 1; i > 0; i--) {
+ gpio_set_value_cansleep(
+ gpio_flash_en, 0);
+ udelay(0);
+ gpio_set_value_cansleep(
+ gpio_flash_en, 1);
+ udelay(1);
+ }
+ torchonoff = 1;
+ }
+ } else {
+ if (value == 0) {
+ pr_err("[Torch flash]OFF\n");
+ gpio_set_value_cansleep(gpio_flash_en, 0);
+ gpio_set_value_cansleep(gpio_flash_set, 0);
+ torchonoff = 0;
+ } else {
+ pr_err("[Torch flash]ON\n");
+ gpio_set_value_cansleep(
+ gpio_flash_en, 0);
+ for (i = 5; i > 1; i--) {
+ gpio_set_value_cansleep(
+ gpio_flash_set, 1);
+ udelay(1);
+ gpio_set_value_cansleep(
+ gpio_flash_set, 0);
+ udelay(1);
+ }
+ gpio_set_value_cansleep(gpio_flash_set, 1);
+ usleep(2*1000);
+ torchonoff = 1;
+ }
+ }
+#else
if (value == 0) {
pr_err("[Torch flash]OFF\n");
gpio_set_value_cansleep(gpio_flash_en, 0);
@@ -2770,6 +2904,9 @@ static ssize_t cameraflash_file_cmd_stor
torchonoff = 0;
} else {
pr_err("[Torch flash]ON\n");
+#if defined(CONFIG_MACH_INFINITE)
+ mdelay(5);
+#endif
gpio_set_value_cansleep(gpio_flash_en, 0);
for (i = 5; i > 1; i--) {
@@ -2785,6 +2922,7 @@ static ssize_t cameraflash_file_cmd_stor
torchonoff = 1;
}
#endif
+#endif
return size;
}
@@ -2925,6 +3063,8 @@ static int get_mclk_rev(void)
return ((system_rev >= BOARD_REV07) ? 1 : 0);
#elif defined(CONFIG_MACH_JASPER)
return ((system_rev >= BOARD_REV08) ? 1 : 0);
+#elif defined(CONFIG_MACH_INFINITE)
+ return ((system_rev >= BOARD_REV04) ? 1 : 0);
#elif defined(CONFIG_MACH_STRETTO)
return 1;
#elif defined(CONFIG_MACH_SUPERIORLTE_SKT)
@@ -3070,6 +3210,15 @@ void __init msm8960_init_cam(void)
gpio_tlmm_config(GPIO_CFG(GPIO_MSM_FLASH_NOW, 0, GPIO_CFG_OUTPUT,
GPIO_CFG_PULL_DOWN, GPIO_CFG_16MA), GPIO_CFG_ENABLE);
#endif
+
+#if defined(CONFIG_MACH_INFINITE)
+ if (system_rev >= BOARD_REV04) {
+ gpio_tlmm_config(GPIO_CFG(GPIO_MSM_FLASH_CNTL_EN2, 0,
+ GPIO_CFG_OUTPUT, GPIO_CFG_PULL_DOWN, GPIO_CFG_16MA),
+ GPIO_CFG_ENABLE);
+ }
+#endif
+
#endif
/*CAM_MCLK0*/
@@ -3124,16 +3273,36 @@ void __init msm8960_init_cam(void)
s_info = &msm_camera_sensor_isx012_data;
if (rev) {
-#if defined(CONFIG_MACH_APEXQ) || defined(CONFIG_MACH_COMANCHE) \
- || defined(CONFIG_MACH_EXPRESS)
+#if defined(CONFIG_MACH_APEXQ) || defined(CONFIG_MACH_COMANCHE)
+
s_info->sensor_platform_info->flash_en =
pmic_gpio_msm_flash_cntl_en;
#elif defined(CONFIG_MACH_AEGIS2)
s_info->sensor_platform_info->flash_set =
GPIO_MSM_FLASH_NOW2;
+#elif defined(CONFIG_MACH_EXPRESS)
+ if (system_rev >= BOARD_REV07) {
+ s_info->sensor_platform_info->flash_en =
+ GPIO_MSM_FLASH_NOW;
+ s_info->sensor_platform_info->flash_set =
+ -1;
+ } else{
+ s_info->sensor_platform_info->flash_en =
+ pmic_gpio_msm_flash_cntl_en;
+ }
+#elif defined(CONFIG_MACH_INFINITE)
+ s_info->sensor_platform_info->flash_set =
+ GPIO_MSM_FLASH_NOW;
+ if (system_rev >= BOARD_REV04) {
+ s_info->sensor_platform_info->flash_en =
+ GPIO_MSM_FLASH_CNTL_EN2;
+ } else {
+ s_info->sensor_platform_info->flash_en =
+ GPIO_MSM_FLASH_CNTL_EN;
+ }
#endif
}
-#if defined(CONFIG_MACH_GOGH) || defined(CONFIG_MACH_INFINITE)
+#if defined(CONFIG_MACH_GOGH)
else {
if (system_rev <= BOARD_REV02) {
s_info->sensor_platform_info->flash_en =
@@ -3157,7 +3326,7 @@ void __init msm8960_init_cam(void)
#if defined(CONFIG_MACH_APEXQ) || defined(CONFIG_MACH_COMANCHE) \
|| defined(CONFIG_MACH_EXPRESS) || defined(CONFIG_MACH_AEGIS2) \
- || defined(CONFIG_MACH_JASPER)
+ || defined(CONFIG_MACH_JASPER) || defined(CONFIG_MACH_INFINITE)
if (rev) {
s_info->sensor_platform_info->mclk =
GPIO_CAM_MCLK2;
file:099cc34e110d200b340441a8732ec25ddc33a638 -> file:b032aebd817c702f195ac462c4201ce7ea310e78
--- a/arch/arm/mach-msm/board-8960-storage.c
+++ b/arch/arm/mach-msm/board-8960-storage.c
@@ -373,9 +373,8 @@ static struct mmc_platform_data msm8960_
#endif
.xpc_cap = 1,
.uhs_caps = (MMC_CAP_UHS_SDR12 | MMC_CAP_UHS_SDR25 |
- MMC_CAP_UHS_SDR50 | MMC_CAP_UHS_DDR50 |
- MMC_CAP_UHS_SDR104 | MMC_CAP_MAX_CURRENT_600 | MMC_CAP_1_8V_DDR),
- .msm_bus_voting_data = &sps_to_ddr_bus_voting_data,
+ MMC_CAP_MAX_CURRENT_600),
+ .msm_bus_voting_data = &sps_to_ddr_bus_voting_data,
};
#endif
file:fa358640e32eca14f7d038b85d4f37604661766c -> file:4a713350577776626bbb66490338ab9d317265bb
--- a/arch/arm/mach-msm/board-8960.c
+++ b/arch/arm/mach-msm/board-8960.c
@@ -1346,7 +1346,7 @@ static struct msm_otg_platform_data msm_
static int wr_phy_init_seq[] = {
0x44, 0x80, /* set VBUS valid threshold
and disconnect valid threshold */
- 0x38, 0x81, /* update DC voltage level */
+ 0x68, 0x81, /* update DC voltage level */
0x14, 0x82, /* set preemphasis and rise/fall time */
0x13, 0x83, /* set source impedance adjusment */
-1};
@@ -1354,7 +1354,7 @@ static int wr_phy_init_seq[] = {
static int liquid_v1_phy_init_seq[] = {
0x44, 0x80,/* set VBUS valid threshold
and disconnect valid threshold */
- 0x3C, 0x81,/* update DC voltage level */
+ 0x6C, 0x81,/* update DC voltage level */
0x18, 0x82,/* set preemphasis and rise/fall time */
0x23, 0x83,/* set source impedance sdjusment */
-1};
file:e4634e2fdc21f76c0cddb2ebdb330760a1dfb6b1 -> file:83af29cbe33d9e9542e3d172d71f6ff78c0b37b5
--- a/arch/arm/mach-msm/board-9615.c
+++ b/arch/arm/mach-msm/board-9615.c
@@ -290,7 +290,7 @@ free_usb_5v_en:
static int shelby_phy_init_seq[] = {
0x44, 0x80,/* set VBUS valid threshold and
disconnect valid threshold */
- 0x38, 0x81, /* update DC voltage level */
+ 0x68, 0x81, /* update DC voltage level */
0x14, 0x82,/* set preemphasis and rise/fall time */
0x13, 0x83,/* set source impedance adjustment */
-1};
file:a242462ef4d38e647c2d2f41f38af144425f5c7b -> file:1af205b5ca2d3d79ade5c58b3d675720bf9c806b
--- a/arch/arm/mach-msm/board-infinite.c
+++ b/arch/arm/mach-msm/board-infinite.c
@@ -1528,7 +1528,7 @@ static int is_sec_battery_using(void)
int check_battery_type(void)
{
- return BATT_TYPE_INFINITE;
+ return BATT_TYPE_GOGH;
}
static struct sec_bat_platform_data sec_bat_pdata = {
@@ -1537,20 +1537,20 @@ static struct sec_bat_platform_data sec_
.get_cable_type = msm8960_get_cable_type,
.sec_battery_using = is_sec_battery_using,
.check_batt_type = check_battery_type,
- .iterm = 100,
+ .iterm = 150,
.charge_duration = 8 * 60 * 60,
.recharge_duration = 2 * 60 * 60,
.max_voltage = 4350 * 1000,
- .recharge_voltage = 4280 * 1000,
+ .recharge_voltage = 4300 * 1000,
.event_block = 620,
- .high_block = 470,
- .high_recovery = 440,
- .low_block = -40,
- .low_recovery = 0,
- .lpm_high_block = 450,
- .lpm_high_recovery = 445,
- .lpm_low_block = -30,
- .lpm_low_recovery = -15,
+ .high_block = 620,
+ .high_recovery = 430,
+ .low_block = -60,
+ .low_recovery = -10,
+ .lpm_high_block = 455,
+ .lpm_high_recovery = 440,
+ .lpm_low_block = -60,
+ .lpm_low_recovery = -30,
};
static struct platform_device sec_device_battery = {
file:785ab1f673e04c52a5e5fd928030a9a13f0cb9c1 -> file:943ac613294927241bf1d28d0f0a3f5ac99eea25
--- a/arch/arm/mach-msm/board-m2_dcm.c
+++ b/arch/arm/mach-msm/board-m2_dcm.c
@@ -137,6 +137,7 @@
#include <mach/msm_rtb.h>
#include <mach/msm_cache_dump.h>
#include <mach/scm.h>
+#include <mach/iommu_domains.h>
#include <linux/fmem.h>
@@ -161,6 +162,10 @@
#ifdef CONFIG_SENSORS_CM36651
#include <linux/i2c/cm36651.h>
#endif
+#ifdef CONFIG_REGULATOR_MAX8952
+#include <linux/regulator/max8952.h>
+#include <linux/regulator/machine.h>
+#endif
#ifdef CONFIG_VIBETONZ
#include <linux/vibrator.h>
#endif
@@ -310,9 +315,8 @@ static struct msm_gpiomux_config msm8960
},
};
-
#define MSM_PMEM_ADSP_SIZE 0x9600000 /* 150 Mbytes */
-#define MSM_PMEM_ADSP_SIZE_FOR_2GB 0x9600000 /* 150 Mbytes */
+#define MSM_PMEM_ADSP_SIZE_FOR_2GB 0xA500000 /* 165 Mbytes */
#define MSM_PMEM_AUDIO_SIZE 0x160000 /* 1.375 Mbytes */
#define MSM_PMEM_SIZE 0x2800000 /* 40 Mbytes */
#define MSM_LIQUID_PMEM_SIZE 0x4000000 /* 64 Mbytes */
@@ -320,21 +324,30 @@ static struct msm_gpiomux_config msm8960
#ifdef CONFIG_MSM_MULTIMEDIA_USE_ION
#define MSM_PMEM_KERNEL_EBI1_SIZE 0x280000 /* 2.5MB */
+#ifdef CONFIG_MSM_IOMMU
+#define MSM_ION_MM_SIZE 0x3800000
+#define MSM_ION_SF_SIZE 0x0
+#define MSM_ION_SF_SIZE_FOR_2GB 0x0
+#define MSM_ION_QSECOM_SIZE 0x780000 /* (7.5MB) */
+#define MSM_ION_HEAP_NUM 7
+#else
+#define MSM_ION_MM_SIZE MSM_PMEM_ADSP_SIZE
#define MSM_ION_SF_SIZE 0x5000000 /* 80MB */
#define MSM_ION_SF_SIZE_FOR_2GB 0x6400000 /* 100MB */
-#define MSM_ION_MM_FW_SIZE 0x200000 /* (2MB) */
-#define MSM_ION_MM_SIZE MSM_PMEM_ADSP_SIZE
#define MSM_ION_QSECOM_SIZE 0x1700000 /* (24MB) */
-#define MSM_ION_MFC_SIZE SZ_8K
-#define MSM_ION_AUDIO_SIZE 0x1000 /* 4KB */
#define MSM_ION_HEAP_NUM 8
+#endif
+#define MSM_ION_MM_FW_SIZE 0x200000 /* (2MB) */
+#define MSM_ION_MFC_SIZE SZ_8K
+#define MSM_ION_AUDIO_SIZE MSM_PMEM_AUDIO_SIZE
+
#define MSM_LIQUID_ION_MM_SIZE (MSM_ION_MM_SIZE + 0x600000)
#define MSM_LIQUID_ION_SF_SIZE MSM_LIQUID_PMEM_SIZE
#define MSM_HDMI_PRIM_ION_SF_SIZE MSM_HDMI_PRIM_PMEM_SIZE
-#define MSM8960_FIXED_AREA_START 0xad000000
+#define MSM8960_FIXED_AREA_START 0xb0000000
#define MAX_FIXED_AREA_SIZE 0x10000000
-#define MSM_MM_FW_SIZE 0x280000
+#define MSM_MM_FW_SIZE 0x200000
#define MSM8960_FW_START (MSM8960_FIXED_AREA_START - MSM_MM_FW_SIZE)
static unsigned msm_ion_sf_size = MSM_ION_SF_SIZE;
@@ -499,7 +512,7 @@ static void __init size_pmem_devices(voi
if (!pmem_param_set) {
if (machine_is_msm8960_liquid())
pmem_size = MSM_LIQUID_PMEM_SIZE;
- if (hdmi_is_primary)
+ if (msm8960_hdmi_as_primary_selected())
pmem_size = MSM_HDMI_PRIM_PMEM_SIZE;
}
@@ -537,10 +550,12 @@ static int msm8960_paddr_to_memtype(unsi
#ifdef CONFIG_MSM_MULTIMEDIA_USE_ION
static struct ion_cp_heap_pdata cp_mm_ion_pdata = {
.permission_type = IPT_TYPE_MM_CARVEOUT,
- .align = PAGE_SIZE,
+ .align = SZ_64K,
.reusable = FMEM_ENABLED,
.mem_is_fmem = FMEM_ENABLED,
.fixed_position = FIXED_MIDDLE,
+ .iommu_map_all = 1,
+ .iommu_2x_map_domain = VIDEO_DOMAIN,
};
static struct ion_cp_heap_pdata cp_mfc_ion_pdata = {
@@ -609,14 +624,16 @@ static struct ion_platform_data ion_pdat
.memory_type = ION_EBI_TYPE,
.extra_data = (void *) &cp_mfc_ion_pdata,
},
+#ifndef CONFIG_MSM_IOMMU
{
.id = ION_SF_HEAP_ID,
.type = ION_HEAP_TYPE_CARVEOUT,
.name = ION_SF_HEAP_NAME,
- .size = MSM_ION_SF_SIZE,
+ .size = MSM_ION_SF_SIZE_FOR_2GB,
.memory_type = ION_EBI_TYPE,
.extra_data = (void *) &co_ion_pdata,
},
+#endif
{
.id = ION_IOMMU_HEAP_ID,
.type = ION_HEAP_TYPE_IOMMU,
@@ -663,10 +680,11 @@ static void __init adjust_mem_for_liquid
if (machine_is_msm8960_liquid())
msm_ion_sf_size = MSM_LIQUID_ION_SF_SIZE;
- if (hdmi_is_primary)
+ if (msm8960_hdmi_as_primary_selected())
msm_ion_sf_size = MSM_HDMI_PRIM_ION_SF_SIZE;
- if (machine_is_msm8960_liquid() || hdmi_is_primary) {
+ if (machine_is_msm8960_liquid() ||
+ msm8960_hdmi_as_primary_selected()) {
for (i = 0; i < ion_pdata.nr; i++) {
if (ion_pdata.heaps[i].id == ION_SF_HEAP_ID) {
ion_pdata.heaps[i].size =
@@ -730,6 +748,7 @@ static void __init reserve_ion_memory(vo
fmem_pdata.size = 0;
fmem_pdata.reserved_size_low = 0;
fmem_pdata.reserved_size_high = 0;
+ fmem_pdata.align = PAGE_SIZE;
fixed_low_size = 0;
fixed_middle_size = 0;
fixed_high_size = 0;
@@ -755,7 +774,11 @@ static void __init reserve_ion_memory(vo
}
for (i = 0; i < ion_pdata.nr; ++i) {
- struct ion_platform_heap *heap = &(ion_pdata.heaps[i]);
+ struct ion_platform_heap *heap =
+ &(ion_pdata.heaps[i]);
+ int align = SZ_4K;
+ int iommu_map_all = 0;
+ int adjacent_mem_id = INVALID_HEAP_ID;
if (heap->extra_data) {
int fixed_position = NOT_FIXED;
@@ -774,17 +797,35 @@ static void __init reserve_ion_memory(vo
heap->extra_data)->mem_is_fmem;
fixed_position = ((struct ion_cp_heap_pdata *)
heap->extra_data)->fixed_position;
+ align = ((struct ion_cp_heap_pdata *)
+ heap->extra_data)->align;
+ iommu_map_all =
+ ((struct ion_cp_heap_pdata *)
+ heap->extra_data)->iommu_map_all;
break;
case ION_HEAP_TYPE_CARVEOUT:
mem_is_fmem = ((struct ion_co_heap_pdata *)
heap->extra_data)->mem_is_fmem;
fixed_position = ((struct ion_co_heap_pdata *)
heap->extra_data)->fixed_position;
+ adjacent_mem_id = ((struct ion_co_heap_pdata *)
+ heap->extra_data)->adjacent_mem_id;
break;
default:
break;
}
+ if (iommu_map_all) {
+ if (heap->size & (SZ_64K-1)) {
+ heap->size = ALIGN(heap->size, SZ_64K);
+ pr_info("Heap %s not aligned to 64K. Adjusting size to %x\n",
+ heap->name, heap->size);
+ }
+ }
+
+ if (mem_is_fmem && adjacent_mem_id != INVALID_HEAP_ID)
+ fmem_pdata.align = align;
+
if (fixed_position != NOT_FIXED)
fixed_size += heap->size;
else
@@ -1005,7 +1046,7 @@ static void __init msm8960_reserve(void)
pr_info("fmem start %lx (fixed) size %lx\n",
fmem_pdata.phys, fmem_pdata.size);
#else
- fmem_pdata.phys = reserve_memory_for_fmem(fmem_pdata.size);
+ fmem_pdata.phys = reserve_memory_for_fmem(fmem_pdata.size, fmem_pdata.align);
#endif
}
@@ -1467,6 +1508,13 @@ static void fsa9485_smartdock_cb(bool at
msm_otg_set_smartdock_state(attached);
}
+static void fsa9485_audio_dock_cb(bool attached)
+{
+ pr_info("fsa9485_audio_dock_cb attached %d\n", attached);
+
+ msm_otg_set_smartdock_state(attached);
+}
+
static int fsa9485_dock_init(void)
{
int ret;
@@ -1555,6 +1603,7 @@ static struct fsa9485_platform_data fsa9
.dock_init = fsa9485_dock_init,
.usb_cdp_cb = fsa9485_usb_cdp_cb,
.smartdock_cb = fsa9485_smartdock_cb,
+ .audio_dock_cb = fsa9485_audio_dock_cb,
};
static struct i2c_board_info micro_usb_i2c_devices_info[] __initdata = {
@@ -1783,14 +1832,12 @@ static void smb347_wireless_cb(void)
void smb347_hw_init(void)
{
-
struct pm_gpio batt_int_param = {
.direction = PM_GPIO_DIR_IN,
.pull = PM_GPIO_PULL_NO,
.vin_sel = PM_GPIO_VIN_S4,
.function = PM_GPIO_FUNC_NORMAL,
};
-
int rc = 0;
gpio_tlmm_config(GPIO_CFG(GPIO_INOK_INT, 0, GPIO_CFG_INPUT,
@@ -2499,6 +2546,7 @@ static void cm36651_led_onoff(int onoff)
if (rc)
pr_err("%s: error reg_8921_leda setting ret=%d\n",
__func__, rc);
+ return;
}
if (onoff) {
@@ -2566,7 +2614,6 @@ err_alloc_data_failed:
static struct a2220_platform_data a2220_data = {
.a2220_hw_init = a2220_hw_init,
.gpio_reset = MSM_AUD_A2220_RESET,
- .gpio_wakeup = MSM_AUD_A2220_WAKEUP,
};
static struct i2c_board_info a2220_device[] __initdata = {
@@ -2577,8 +2624,6 @@ static struct i2c_board_info a2220_devic
};
static struct i2c_gpio_platform_data a2220_i2c_gpio_data = {
- .sda_pin = GPIO_A2220_I2C_SDA,
- .scl_pin = GPIO_A2220_I2C_SCL,
.udelay = 1,
};
@@ -3954,7 +3999,7 @@ static struct i2c_board_info sii_device_
};
static struct msm_i2c_platform_data msm8960_i2c_qup_gsbi4_pdata = {
- .clk_freq = 100000,
+ .clk_freq = 400000,
.src_clk_rate = 24000000,
};
@@ -4024,6 +4069,7 @@ static struct spi_board_info spi_board_i
},
};
#endif
+
static struct msm_pm_sleep_status_data msm_pm_slp_sts_data = {
.base_addr = MSM_ACC0_BASE + 0x08,
.cpu_offset = MSM_ACC1_BASE - MSM_ACC0_BASE,
@@ -4455,6 +4501,7 @@ static struct platform_device *m2_dcm_de
&msm_8960_q6_mss_sw,
&msm_8960_riva,
&msm_pil_tzapps,
+ &msm_pil_vidc,
&msm8960_device_otg,
&msm8960_device_gadget_peripheral,
&msm_device_hsusb_host,
@@ -4583,17 +4630,11 @@ static struct msm_cpuidle_state msm_csta
{0, 0, "C0", "WFI",
MSM_PM_SLEEP_MODE_WAIT_FOR_INTERRUPT},
- {0, 1, "C1", "STANDALONE_POWER_COLLAPSE",
- MSM_PM_SLEEP_MODE_POWER_COLLAPSE_STANDALONE},
-
- {0, 2, "C2", "POWER_COLLAPSE",
+ {0, 1, "C2", "POWER_COLLAPSE",
MSM_PM_SLEEP_MODE_POWER_COLLAPSE},
{1, 0, "C0", "WFI",
MSM_PM_SLEEP_MODE_WAIT_FOR_INTERRUPT},
-
- {1, 1, "C1", "STANDALONE_POWER_COLLAPSE",
- MSM_PM_SLEEP_MODE_POWER_COLLAPSE_STANDALONE},
};
static struct msm_pm_platform_data msm_pm_data[MSM_PM_SLEEP_MODE_NR * 2] = {
@@ -4604,13 +4645,6 @@ static struct msm_pm_platform_data msm_p
.suspend_enabled = 0,
},
- [MSM_PM_MODE(0, MSM_PM_SLEEP_MODE_POWER_COLLAPSE_STANDALONE)] = {
- .idle_supported = 1,
- .suspend_supported = 1,
- .idle_enabled = 0,
- .suspend_enabled = 0,
- },
-
[MSM_PM_MODE(0, MSM_PM_SLEEP_MODE_WAIT_FOR_INTERRUPT)] = {
.idle_supported = 1,
.suspend_supported = 1,
@@ -4625,13 +4659,6 @@ static struct msm_pm_platform_data msm_p
.suspend_enabled = 0,
},
- [MSM_PM_MODE(1, MSM_PM_SLEEP_MODE_POWER_COLLAPSE_STANDALONE)] = {
- .idle_supported = 1,
- .suspend_supported = 1,
- .idle_enabled = 0,
- .suspend_enabled = 0,
- },
-
[MSM_PM_MODE(1, MSM_PM_SLEEP_MODE_WAIT_FOR_INTERRUPT)] = {
.idle_supported = 1,
.suspend_supported = 0,
@@ -4649,10 +4676,10 @@ static struct msm_rpmrs_level msm_rpmrs_
},
{
- MSM_PM_SLEEP_MODE_POWER_COLLAPSE_STANDALONE,
- MSM_RPMRS_LIMITS(ON, ACTIVE, MAX, ACTIVE),
- true,
- 2000, 200, 576000, 2000,
+ MSM_PM_SLEEP_MODE_POWER_COLLAPSE,
+ MSM_RPMRS_LIMITS(ON, GDHS, MAX, ACTIVE),
+ false,
+ 8500, 51, 1122000, 8500,
},
{
@@ -4661,7 +4688,6 @@ static struct msm_rpmrs_level msm_rpmrs_
false,
9000, 51, 1130300, 9000,
},
-
{
MSM_PM_SLEEP_MODE_POWER_COLLAPSE,
MSM_RPMRS_LIMITS(ON, HSFS_OPEN, ACTIVE, RET_HIGH),
@@ -4671,6 +4697,13 @@ static struct msm_rpmrs_level msm_rpmrs_
{
MSM_PM_SLEEP_MODE_POWER_COLLAPSE,
+ MSM_RPMRS_LIMITS(OFF, GDHS, MAX, ACTIVE),
+ false,
+ 12000, 14, 2205900, 12000,
+ },
+
+ {
+ MSM_PM_SLEEP_MODE_POWER_COLLAPSE,
MSM_RPMRS_LIMITS(OFF, HSFS_OPEN, MAX, ACTIVE),
false,
18000, 12, 2364250, 18000,
@@ -4768,6 +4801,43 @@ static struct i2c_board_info msm_camera_
};
#endif
+/*Gopal: add for D2_DCM CAM_ISP_CORE power setting by MAX8952*/
+#ifdef CONFIG_REGULATOR_MAX8952
+static int max8952_is_used(void)
+{
+ if (system_rev >= 0x3)
+ return 1;
+ else
+ return 0;
+}
+
+static struct regulator_consumer_supply max8952_consumer =
+ REGULATOR_SUPPLY("cam_isp_core", NULL);
+
+static struct max8952_platform_data m2_dcm_max8952_pdata = {
+ .gpio_vid0 = -1, /* NOT controlled by GPIO, HW default high*/
+ .gpio_vid1 = -1, /* NOT controlled by GPIO, HW default high*/
+ .gpio_en = CAM_CORE_EN, /*Controlled by GPIO, High enable */
+ .default_mode = 3, /* vid0 = 1, vid1 = 1 */
+ .dvs_mode = { 33, 33, 33, 43 }, /* 1.1V, 1.1V, 1.1V, 1.2V*/
+ .sync_freq = 0, /* default: fastest */
+ .ramp_speed = 0, /* default: fastest */
+ .reg_data = {
+ .constraints = {
+ .name = "CAM_ISP_CORE",
+ .min_uV = 770000,
+ .max_uV = 1400000,
+ .valid_ops_mask = REGULATOR_CHANGE_VOLTAGE |
+ REGULATOR_CHANGE_STATUS,
+ .always_on = 0,
+ .boot_on = 0,
+ },
+ .num_consumer_supplies = 1,
+ .consumer_supplies = &max8952_consumer,
+ },
+};
+#endif /*CONFIG_REGULATOR_MAX8952*/
+
#ifdef CONFIG_SAMSUNG_CMC624
static struct i2c_board_info cmc624_i2c_borad_info[] = {
{
@@ -4776,6 +4846,19 @@ static struct i2c_board_info cmc624_i2c_
};
#endif
+#ifdef CONFIG_REGULATOR_MAX8952
+static struct i2c_board_info cmc624_max8952_i2c_borad_info[] = {
+ {
+ I2C_BOARD_INFO("cmc624", 0x38),
+ },
+
+ {
+ I2C_BOARD_INFO("max8952", 0xC0>>1),
+ .platform_data = &m2_dcm_max8952_pdata,
+ },
+};
+#endif /*CONFIG_REGULATOR_MAX8952*/
+
/* Sensors DSPS platform data */
#ifdef CONFIG_MSM_DSPS
#define DSPS_PIL_GENERIC_NAME "dsps"
@@ -4973,6 +5056,15 @@ static void __init register_i2c_devices(
u8 mach_mask = 0;
int i;
+#ifdef CONFIG_REGULATOR_MAX8952
+struct i2c_registry cmc624_max8952_i2c_devices = {
+ I2C_SURF | I2C_FFA | I2C_FLUID ,
+ MSM_CMC624_I2C_BUS_ID,
+ cmc624_max8952_i2c_borad_info,
+ ARRAY_SIZE(cmc624_max8952_i2c_borad_info),
+ };
+#endif /*CONFIG_REGULATOR_MAX8952*/
+
#ifdef CONFIG_BATTERY_MAX17040
struct i2c_registry msm8960_fg_i2c_devices = {
I2C_SURF | I2C_FFA | I2C_FLUID,
@@ -5016,6 +5108,17 @@ static void __init register_i2c_devices(
msm8960_i2c_devices[i].len);
}
+#ifdef CONFIG_SAMSUNG_CMC624
+#ifdef CONFIG_REGULATOR_MAX8952
+ if (max8952_is_used()) {
+ m2_dcm_max8952_pdata.gpio_en = gpio_rev(CAM_CORE_EN);
+ i2c_register_board_info(cmc624_max8952_i2c_devices.bus,
+ cmc624_max8952_i2c_devices.info,
+ cmc624_max8952_i2c_devices.len);
+ }
+#endif /*CONFIG_REGULATOR_MAX8952*/
+#endif /*CONFIG_SAMSUNG_CMC624*/
+
#if defined(CONFIG_BATTERY_MAX17040)
if (!is_smb347_using()) {
i2c_register_board_info(msm8960_fg_i2c_devices.bus,
@@ -5127,12 +5230,23 @@ static int secjack_gpio_init()
pr_err("%s PMIC_GPIO_SHORT_SENDEND config failed\n", __func__);
return rc;
}
+ rc = gpio_request(
+ PM8921_GPIO_PM_TO_SYS(PMIC_GPIO_EAR_MICBIAS_EN),
+ "EAR_MICBIAS");
+ if (rc) {
+ pr_err("failed to request ear micbias gpio\n");
+ gpio_free(PM8921_GPIO_PM_TO_SYS(PMIC_GPIO_EAR_MICBIAS_EN));
+ return rc;
+ }
rc = pm8xxx_gpio_config(
PM8921_GPIO_PM_TO_SYS(PMIC_GPIO_EAR_MICBIAS_EN),
&ear_micbiase);
if (rc) {
pr_err("%s PMIC_GPIO_EAR_MICBIAS_EN config failed\n", __func__);
return rc;
+ } else {
+ gpio_direction_output(PM8921_GPIO_PM_TO_SYS(
+ PMIC_GPIO_EAR_MICBIAS_EN), 0);
}
return rc;
file:bf3b011649630ff8a57fe6ed96800a1c9585fda8 -> file:083e69d4afcd7fa580e11cba23fe1600df4165d6
--- a/arch/arm/mach-msm/board-m2_spr.c
+++ b/arch/arm/mach-msm/board-m2_spr.c
@@ -1785,10 +1785,23 @@ static struct sec_bat_platform_data sec_
.get_cable_type = msm8960_get_cable_type,
.sec_battery_using = is_sec_battery_using,
.check_batt_type = check_battery_type,
- .iterm = 100,
.charge_duration = 8 * 60 * 60,
.recharge_duration = 2 * 60 * 60,
.max_voltage = 4350 * 1000,
+#if defined(_d2spi_)
+ .iterm = 150,
+ .recharge_voltage = 4300 * 1000,
+ .event_block = 580,
+ .high_block = 580,
+ .high_recovery = 440,
+ .low_block = -40,
+ .low_recovery = -5,
+ .lpm_high_block = 580,
+ .lpm_high_recovery = 440,
+ .lpm_low_block = -40,
+ .lpm_low_recovery = -5,
+#else
+ .iterm = 100,
.recharge_voltage = 4280 * 1000,
.event_block = 600,
.high_block = 450,
@@ -1799,6 +1812,7 @@ static struct sec_bat_platform_data sec_
.lpm_high_recovery = 435,
.lpm_low_block = 0,
.lpm_low_recovery = 15,
+#endif
.wpc_charging_current = 500,
};
file:356ab38e2d8f5c9c209c21feac1166f94b719eaa -> file:551d8f8e0d419dccf301090c70c0f796e9d47236
--- a/arch/arm/mach-msm/board-m2_vzw.c
+++ b/arch/arm/mach-msm/board-m2_vzw.c
@@ -1813,26 +1813,49 @@ static struct sec_bat_platform_data sec_
.get_cable_type = msm8960_get_cable_type,
.sec_battery_using = is_sec_battery_using,
.check_batt_type = check_battery_type,
- .iterm = 100,
.charge_duration = 8 * 60 * 60,
.recharge_duration = 2 * 60 * 60,
.max_voltage = 4350 * 1000,
+#if defined(_d2mtr_) || defined(_d2cri_)
+ .iterm = 150,
+ .recharge_voltage = 4300 * 1000,
+#else
+ .iterm = 100,
.recharge_voltage = 4280 * 1000,
- .event_block = 600,
+#endif
+
#if defined(_d2usc_)
+ .event_block = 600,
.high_block = 600,
+ .high_recovery = 440,
+ .low_block = -50,
+ .low_recovery = -10,
.lpm_high_block = 600,
-#else
+ .lpm_high_recovery = 440,
+ .lpm_low_block = -40,
+ .lpm_low_recovery = -10,
+#elif defined(_d2mtr_) || defined(_d2cri_)
+ .event_block = 610,
+ .high_block = 610,
+ .high_recovery = 440,
+ .low_block = -40,
+ .low_recovery = -5,
+ .lpm_high_block = 610,
+ .lpm_high_recovery = 440,
+ .lpm_low_block = -40,
+ .lpm_low_recovery = -5,
+#else /* _d2vzw_ */
+ .event_block = 600,
.high_block = 510,
- .lpm_high_block = 470,
-#endif
.high_recovery = 440,
.high_recovery_wpc = 490,
.low_block = -50,
.low_recovery = -10,
+ .lpm_high_block = 470,
.lpm_high_recovery = 440,
.lpm_low_block = -40,
.lpm_low_recovery = -10,
+#endif
.wpc_charging_current = 700,
};
file:14090b3741c5ad41c350b283c9326a042076c871 -> file:1f848af863a5c7da90e60636787c8858aea62ccf
--- a/arch/arm/mach-msm/board-mms-tsp.c
+++ b/arch/arm/mach-msm/board-mms-tsp.c
@@ -337,7 +337,7 @@ static struct mms_ts_platform_data mms_t
.max_x = 720,
.max_y = 1280,
.gpio_lcd_type = GPIO_LCD_TYPE,
- .config_fw_version = "I747_Me_0507",
+ .config_fw_version = "I747_Me_0924",
.register_cb = melfas_register_callback,
#endif
.mux_fw_flash = melfas_mux_fw_flash,
file:cc4f47bcda450c3dd7b1c8f9b169f05fb76bcbcd -> file:74f21872d491368578d34e8d7a299e14d0b7b0a5
--- a/arch/arm/mach-msm/board-msm7x30.c
+++ b/arch/arm/mach-msm/board-msm7x30.c
@@ -104,11 +104,18 @@
* res V4L2 video overlay - i.e. 1280x720x1.5x2
*/
#define MSM_V4L2_VIDEO_OVERLAY_BUF_SIZE 2764800
-#define MSM_PMEM_ADSP_SIZE 0x1E00000
+#define MSM_PMEM_ADSP_SIZE 0x2184000
#define MSM_FLUID_PMEM_ADSP_SIZE 0x2800000
#define PMEM_KERNEL_EBI0_SIZE 0x600000
#define MSM_PMEM_AUDIO_SIZE 0x200000
+#ifdef CONFIG_ION_MSM
+static struct platform_device ion_dev;
+#define MSM_ION_AUDIO_SIZE (MSM_PMEM_AUDIO_SIZE + PMEM_KERNEL_EBI0_SIZE)
+#define MSM_ION_SF_SIZE MSM_PMEM_SF_SIZE
+#define MSM_ION_HEAP_NUM 4
+#endif
+
#define PMIC_GPIO_INT 27
#define PMIC_VREG_WLAN_LEVEL 2900
#define PMIC_GPIO_SD_DET 36
@@ -1204,7 +1211,7 @@ static struct platform_device msm_camera
#ifdef CONFIG_VX6953
static struct msm_camera_sensor_platform_info vx6953_sensor_7630_info = {
- .mount_angle = 0
+ .mount_angle = 180
};
static struct msm_camera_sensor_flash_data flash_vx6953 = {
@@ -4507,6 +4514,7 @@ static int lcdc_panel_power(int on)
if (unlikely(!lcdc_power_initialized)) {
quickvx_mddi_client = 0;
+ regulator_put(mddi_ldo20);
display_common_init();
lcdc_power_initialized = 1;
}
@@ -4999,7 +5007,7 @@ static int bluetooth_power(int on)
int bahama_not_marimba = bahama_present();
- if (bahama_not_marimba == -1) {
+ if (bahama_not_marimba < 0) {
printk(KERN_WARNING "%s: bahama_present: %d\n",
__func__, bahama_not_marimba);
return -ENODEV;
@@ -5286,7 +5294,10 @@ static struct platform_device *devices[]
&msm_batt_device,
&msm_adc_device,
&msm_ebi0_thermal,
- &msm_ebi1_thermal
+ &msm_ebi1_thermal,
+#ifdef CONFIG_ION_MSM
+ &ion_dev,
+#endif
};
static struct msm_gpio msm_i2c_gpios_hw[] = {
@@ -6960,6 +6971,65 @@ static int __init pmem_kernel_ebi0_size_
}
early_param("pmem_kernel_ebi0_size", pmem_kernel_ebi0_size_setup);
+#ifdef CONFIG_ION_MSM
+#ifdef CONFIG_MSM_MULTIMEDIA_USE_ION
+static struct ion_co_heap_pdata co_ion_pdata = {
+ .adjacent_mem_id = INVALID_HEAP_ID,
+ .align = PAGE_SIZE,
+};
+#endif
+
+/**
+ * These heaps are listed in the order they will be allocated.
+ * Don't swap the order unless you know what you are doing!
+ */
+static struct ion_platform_data ion_pdata = {
+ .nr = MSM_ION_HEAP_NUM,
+ .heaps = {
+ {
+ .id = ION_SYSTEM_HEAP_ID,
+ .type = ION_HEAP_TYPE_SYSTEM,
+ .name = ION_VMALLOC_HEAP_NAME,
+ },
+#ifdef CONFIG_MSM_MULTIMEDIA_USE_ION
+ /* PMEM_ADSP = CAMERA */
+ {
+ .id = ION_CAMERA_HEAP_ID,
+ .type = ION_HEAP_TYPE_CARVEOUT,
+ .name = ION_CAMERA_HEAP_NAME,
+ .memory_type = ION_EBI_TYPE,
+ .has_outer_cache = 1,
+ .extra_data = (void *)&co_ion_pdata,
+ },
+ /* PMEM_AUDIO */
+ {
+ .id = ION_AUDIO_HEAP_ID,
+ .type = ION_HEAP_TYPE_CARVEOUT,
+ .name = ION_AUDIO_HEAP_NAME,
+ .memory_type = ION_EBI_TYPE,
+ .has_outer_cache = 1,
+ .extra_data = (void *)&co_ion_pdata,
+ },
+ /* PMEM_MDP = SF */
+ {
+ .id = ION_SF_HEAP_ID,
+ .type = ION_HEAP_TYPE_CARVEOUT,
+ .name = ION_SF_HEAP_NAME,
+ .memory_type = ION_EBI_TYPE,
+ .has_outer_cache = 1,
+ .extra_data = (void *)&co_ion_pdata,
+ },
+#endif
+ }
+};
+
+static struct platform_device ion_dev = {
+ .name = "ion-msm",
+ .id = 1,
+ .dev = { .platform_data = &ion_pdata },
+};
+#endif
+
static struct memtype_reserve msm7x30_reserve_table[] __initdata = {
[MEMTYPE_SMI] = {
},
@@ -6971,40 +7041,79 @@ static struct memtype_reserve msm7x30_re
},
};
-static void __init size_pmem_devices(void)
-{
-#ifdef CONFIG_ANDROID_PMEM
- unsigned long size;
+unsigned long size;
+unsigned long msm_ion_camera_size;
+static void fix_sizes(void)
+{
if machine_is_msm7x30_fluid()
size = fluid_pmem_adsp_size;
else
size = pmem_adsp_size;
+
+#ifdef CONFIG_ION_MSM
+ msm_ion_camera_size = size;
+#endif
+}
+
+static void __init size_pmem_devices(void)
+{
+#ifdef CONFIG_ANDROID_PMEM
+#ifndef CONFIG_MSM_MULTIMEDIA_USE_ION
+
android_pmem_adsp_pdata.size = size;
android_pmem_audio_pdata.size = pmem_audio_size;
android_pmem_pdata.size = pmem_sf_size;
#endif
+#endif
}
+#ifdef CONFIG_ANDROID_PMEM
+#ifndef CONFIG_MSM_MULTIMEDIA_USE_ION
static void __init reserve_memory_for(struct android_pmem_platform_data *p)
{
msm7x30_reserve_table[p->memory_type].size += p->size;
}
+#endif
+#endif
static void __init reserve_pmem_memory(void)
{
#ifdef CONFIG_ANDROID_PMEM
+#ifndef CONFIG_MSM_MULTIMEDIA_USE_ION
reserve_memory_for(&android_pmem_adsp_pdata);
reserve_memory_for(&android_pmem_audio_pdata);
reserve_memory_for(&android_pmem_pdata);
msm7x30_reserve_table[MEMTYPE_EBI0].size += pmem_kernel_ebi0_size;
#endif
+#endif
+}
+
+static void __init size_ion_devices(void)
+{
+#ifdef CONFIG_MSM_MULTIMEDIA_USE_ION
+ ion_pdata.heaps[1].size = msm_ion_camera_size;
+ ion_pdata.heaps[2].size = MSM_ION_AUDIO_SIZE;
+ ion_pdata.heaps[3].size = MSM_ION_SF_SIZE;
+#endif
+}
+
+static void __init reserve_ion_memory(void)
+{
+#if defined(CONFIG_ION_MSM) && defined(CONFIG_MSM_MULTIMEDIA_USE_ION)
+ msm7x30_reserve_table[MEMTYPE_EBI0].size += msm_ion_camera_size;
+ msm7x30_reserve_table[MEMTYPE_EBI0].size += MSM_ION_AUDIO_SIZE;
+ msm7x30_reserve_table[MEMTYPE_EBI0].size += MSM_ION_SF_SIZE;
+#endif
}
static void __init msm7x30_calculate_reserve_sizes(void)
{
+ fix_sizes();
size_pmem_devices();
reserve_pmem_memory();
+ size_ion_devices();
+ reserve_ion_memory();
}
static int msm7x30_paddr_to_memtype(unsigned int paddr)
file:f67a5cb00df3f75a7e1627050fedd45b18927fde -> file:c3dd119d898cbafb3a834d69a482435bbf4dbf32
--- a/arch/arm/mach-msm/devices-8960.c
+++ b/arch/arm/mach-msm/devices-8960.c
@@ -1692,8 +1692,13 @@ static struct resource resources_qup_spi
/*test: Qualcomm, DMA SPI, start */
{
.name = "spidm_channels",
+#ifdef CONFIG_MACH_M2_ATT
+ .start = 3,
+ .end = 4,
+#else
.start = 9,
.end = 10,
+#endif
.flags = IORESOURCE_DMA,
},
{
file:1c75cf7368ec88d7b9089edb3637d9407d6a91ec -> file:05e547eaa1b1443a6bc558248df9925f7392cd4d
--- a/arch/arm/mach-msm/include/mach/board.h
+++ b/arch/arm/mach-msm/include/mach/board.h
@@ -495,6 +495,7 @@ struct msm_vidc_platform_data {
struct msm_bus_scale_pdata *vidc_bus_client_pdata;
#endif
int disable_turbo;
+ int cont_mode_dpb_count;
};
#if defined(CONFIG_USB_PEHCI_HCD) || defined(CONFIG_USB_PEHCI_HCD_MODULE)
file:4f73ea1bb4a7fdb259dd8f44574331f1e77684ee -> file:53a4cebe2c63e904fcd28c8fddb4b69efaf60422
--- a/arch/arm/mach-msm/include/mach/camera.h
+++ b/arch/arm/mach-msm/include/mach/camera.h
@@ -458,6 +458,8 @@ struct msm_sync {
spinlock_t abort_pict_lock;
int snap_count;
int thumb_count;
+
+ uint32_t focus_state;
};
#define MSM_APPS_ID_V4L2 "msm_v4l2"
file:68a3c44222bed45fa52d68e4e53b5cc26ab90df4 -> file:b15ba224357307f752e18cd056e9d34d45221ed6
--- a/arch/arm/mach-msm/include/mach/qdsp5v2/codec_utils.h
+++ b/arch/arm/mach-msm/include/mach/qdsp5v2/codec_utils.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010, Code Aurora Forum. All rights reserved.
+/* Copyright (c) 2010, 2012, The Linux Foundation. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 and
@@ -122,7 +122,8 @@ struct audio {
uint64_t bytecount_given;
uint64_t bytecount_query;
- struct list_head pmem_region_queue; /* protected by lock */
+ struct list_head ion_region_queue; /* protected by lock */
+ struct ion_client *client;
int eq_enable;
int eq_needs_commit;
file:2355717888c3c97870b1e112cd1261e749c1730d -> file:9611dd43ae737f91ffa6d62739dc636d4f5097ed
--- a/arch/arm/mach-msm/include/mach/sec_debug.h
+++ b/arch/arm/mach-msm/include/mach/sec_debug.h
@@ -524,4 +524,8 @@ extern void sec_debug_set_qc_dload_magic
extern uint32_t global_pvs;
#endif
+#ifdef CONFIG_SEC_DEBUG_DOUBLE_FREE
+extern void *kfree_hook(void *p, void *caller);
+#endif
+
#endif /* SEC_DEBUG_H */
file:31a83f8d319a203994c765af394414cdfbbca49b -> file:aaaa40597fd14e0d027c391eba14d4734068d788
--- a/arch/arm/mach-msm/qdsp5/adsp.c
+++ b/arch/arm/mach-msm/qdsp5/adsp.c
@@ -713,11 +713,22 @@ static void handle_adsp_rtos_mtoa_app(st
mutex_lock(&module->lock);
switch (event) {
case RPC_ADSP_RTOS_MOD_READY:
- MM_INFO("module %s: READY\n", module->name);
- module->state = ADSP_STATE_ENABLED;
- wake_up(&module->state_wait);
- adsp_set_image(module->info, image);
- break;
+ if (module->state == ADSP_STATE_ENABLING) {
+ MM_INFO("module %s: READY\n", module->name);
+ module->state = ADSP_STATE_ENABLED;
+ wake_up(&module->state_wait);
+ adsp_set_image(module->info, image);
+ break;
+ } else {
+ MM_ERR("module %s got READY event in state[%d]\n",
+ module->name,
+ module->state);
+ rpc_send_accepted_void_reply(rpc_cb_server_client,
+ req->xid,
+ RPC_ACCEPTSTAT_GARBAGE_ARGS);
+ mutex_unlock(&module->lock);
+ return;
+ }
case RPC_ADSP_RTOS_MOD_DISABLE:
MM_INFO("module %s: DISABLED\n", module->name);
module->state = ADSP_STATE_DISABLED;
file:3498af6056a2a07d8ff7088b7d5b2e997fd7eeeb -> file:9b3edc97cc0e0afe4e28d008bd55fc2865b30ec9
--- a/arch/arm/mach-msm/qdsp5/audio_mp3.c
+++ b/arch/arm/mach-msm/qdsp5/audio_mp3.c
@@ -2289,7 +2289,10 @@ static int audio_open(struct inode *inod
if (rc) {
MM_ERR("audmgr open failed, freeing instance \
0x%08x\n", (int)audio);
- goto err;
+ if (!(file->f_flags & O_NONBLOCK))
+ goto err;
+ else
+ goto resource_err;
}
}
@@ -2301,7 +2304,10 @@ static int audio_open(struct inode *inod
audio->module_name, (int)audio);
if (audio->pcm_feedback == TUNNEL_MODE_PLAYBACK)
audmgr_close(&audio->audmgr);
- goto err;
+ if (!(file->f_flags & O_NONBLOCK))
+ goto err;
+ else
+ goto resource_err;
}
rc = rmt_get_resource(audio);
@@ -2311,7 +2317,10 @@ static int audio_open(struct inode *inod
if (audio->pcm_feedback == TUNNEL_MODE_PLAYBACK)
audmgr_close(&audio->audmgr);
msm_adsp_put(audio->audplay);
- goto err;
+ if (!(file->f_flags & O_NONBLOCK))
+ goto err;
+ else
+ goto resource_err;
}
if (file->f_flags & O_NONBLOCK) {
@@ -2401,6 +2410,7 @@ output_buff_get_phys_error:
output_buff_alloc_error:
ion_client_destroy(client);
client_create_error:
+resource_err:
audpp_adec_free(audio->dec_id);
kfree(audio);
return rc;
file:60b5c200c27c8e8ef41cc6aee42f04cae6b02c65 -> file:bf51f8184d8b7c815b2d82c8bfb76900a88101da
--- a/arch/arm/mach-msm/qdsp5v2/audio_a2dp_in.c
+++ b/arch/arm/mach-msm/qdsp5v2/audio_a2dp_in.c
@@ -5,6 +5,7 @@
*
* Copyright (C) 2008 HTC Corporation
* Copyright (C) 2008 Google, Inc.
+ * Copyright (c) 2012 The Linux Foundation. All rights reserved.
*
* All source code in this file is licensed under the following license except
* where indicated.
@@ -34,7 +35,7 @@
#include <linux/dma-mapping.h>
#include <linux/msm_audio.h>
#include <linux/msm_audio_sbc.h>
-#include <linux/android_pmem.h>
+#include <linux/ion.h>
#include <linux/memory_alloc.h>
#include <mach/iommu.h>
@@ -116,6 +117,8 @@ struct audio_a2dp_in {
int stopped; /* set when stopped, cleared on flush */
int abort; /* set when error, like sample rate mismatch */
char *build_id;
+ struct ion_client *client;
+ struct ion_handle *output_buff_handle;
};
static struct audio_a2dp_in the_audio_a2dp_in;
@@ -849,10 +852,11 @@ static int auda2dp_in_release(struct ino
audio->audrec = NULL;
audio->opened = 0;
if (audio->data) {
- msm_subsystem_unmap_buffer(audio->msm_map);
- free_contiguous_memory_by_paddr(audio->phys);
+ ion_unmap_kernel(audio->client, audio->output_buff_handle);
+ ion_free(audio->client, audio->output_buff_handle);
audio->data = NULL;
}
+ ion_client_destroy(audio->client);
mutex_unlock(&audio->lock);
return 0;
}
@@ -862,6 +866,11 @@ static int auda2dp_in_open(struct inode
struct audio_a2dp_in *audio = &the_audio_a2dp_in;
int rc;
int encid;
+ int len = 0;
+ unsigned long ionflag = 0;
+ ion_phys_addr_t addr = 0;
+ struct ion_handle *handle = NULL;
+ struct ion_client *client = NULL;
mutex_lock(&audio->lock);
if (audio->opened) {
@@ -869,24 +878,56 @@ static int auda2dp_in_open(struct inode
goto done;
}
- audio->phys = allocate_contiguous_ebi_nomap(DMASZ, SZ_4K);
- if (audio->phys) {
- audio->msm_map = msm_subsystem_map_buffer(
- audio->phys, DMASZ,
- MSM_SUBSYSTEM_MAP_KADDR, NULL, 0);
- if (IS_ERR(audio->msm_map)) {
- MM_ERR("could not map the phys address to kernel"
- "space\n");
- rc = -ENOMEM;
- free_contiguous_memory_by_paddr(audio->phys);
- goto done;
- }
- audio->data = (u8 *)audio->msm_map->vaddr;
+ client = msm_ion_client_create(UINT_MAX, "Audio_a2dp_in_client");
+ if (IS_ERR_OR_NULL(client)) {
+ MM_ERR("Unable to create ION client\n");
+ rc = -ENOMEM;
+ goto client_create_error;
+ }
+ audio->client = client;
+
+ MM_DBG("allocating mem sz = %d\n", DMASZ);
+ handle = ion_alloc(client, DMASZ, SZ_4K,
+ ION_HEAP(ION_AUDIO_HEAP_ID));
+ if (IS_ERR_OR_NULL(handle)) {
+ MM_ERR("Unable to create allocate O/P buffers\n");
+ rc = -ENOMEM;
+ goto output_buff_alloc_error;
+ }
+
+ audio->output_buff_handle = handle;
+
+ rc = ion_phys(client , handle, &addr, &len);
+ if (rc) {
+ MM_ERR("O/P buffers:Invalid phy: %x sz: %x\n",
+ (unsigned int) addr, (unsigned int) len);
+ rc = -ENOMEM;
+ goto output_buff_get_phys_error;
} else {
- MM_ERR("could not allocate DMA buffers\n");
+ MM_INFO("O/P buffers:valid phy: %x sz: %x\n",
+ (unsigned int) addr, (unsigned int) len);
+ }
+ audio->phys = (int32_t)addr;
+
+ rc = ion_handle_get_flags(client, handle, &ionflag);
+ if (rc) {
+ MM_ERR("could not get flags for the handle\n");
rc = -ENOMEM;
- goto done;
+ goto output_buff_get_flags_error;
}
+
+ audio->msm_map = ion_map_kernel(client, handle, ionflag);
+ if (IS_ERR(audio->data)) {
+ MM_ERR("could not map read buffers,freeing instance 0x%08x\n",
+ (int)audio);
+ rc = -ENOMEM;
+ goto output_buff_map_error;
+ }
+ MM_DBG("read buf: phy addr 0x%08x kernel addr 0x%08x\n",
+ audio->phys, (int)audio->data);
+
+ audio->data = (char *)audio->msm_map;
+
MM_DBG("Memory addr = 0x%8x phy addr = 0x%8x\n",\
(int) audio->data, (int) audio->phys);
@@ -956,6 +997,13 @@ done:
mutex_unlock(&audio->lock);
return rc;
evt_error:
+output_buff_map_error:
+output_buff_get_phys_error:
+output_buff_get_flags_error:
+ ion_free(client, audio->output_buff_handle);
+output_buff_alloc_error:
+ ion_client_destroy(client);
+client_create_error:
msm_adsp_put(audio->audrec);
audpreproc_aenc_free(audio->enc_id);
mutex_unlock(&audio->lock);
file:bdb5bb1e8abbba65b12a441cea2cdc9d1d780c87 -> file:156fbe5ca410a17b1cd3305a808d18e3d51191f7
--- a/arch/arm/mach-msm/qdsp5v2/audio_amrnb_in.c
+++ b/arch/arm/mach-msm/qdsp5v2/audio_amrnb_in.c
@@ -27,7 +27,7 @@
#include <linux/wait.h>
#include <linux/dma-mapping.h>
#include <linux/msm_audio_amrnb.h>
-#include <linux/android_pmem.h>
+#include <linux/ion.h>
#include <linux/memory_alloc.h>
#include <mach/iommu.h>
@@ -106,6 +106,8 @@ struct audio_in {
int running;
int stopped; /* set when stopped, cleared on flush */
char *build_id;
+ struct ion_client *client;
+ struct ion_handle *buff_handle;
};
struct audio_frame {
@@ -767,8 +769,9 @@ static int audamrnb_in_release(struct in
audio->audrec = NULL;
audio->opened = 0;
if (audio->data) {
- msm_subsystem_unmap_buffer(audio->map_v_read);
- free_contiguous_memory_by_paddr(audio->phys);
+ ion_unmap_kernel(audio->client, audio->buff_handle);
+ ion_free(audio->client, audio->buff_handle);
+ ion_client_destroy(audio->client);
audio->data = NULL;
}
mutex_unlock(&audio->lock);
@@ -780,29 +783,62 @@ static int audamrnb_in_open(struct inode
struct audio_in *audio = &the_audio_amrnb_in;
int rc;
int encid;
+ int len = 0;
+ unsigned long ionflag = 0;
+ ion_phys_addr_t addr = 0;
+ struct ion_handle *handle = NULL;
+ struct ion_client *client = NULL;
mutex_lock(&audio->lock);
if (audio->opened) {
rc = -EBUSY;
goto done;
}
- audio->phys = allocate_contiguous_ebi_nomap(DMASZ, SZ_4K);
- if (audio->phys) {
- audio->map_v_read = msm_subsystem_map_buffer(
- audio->phys, DMASZ,
- MSM_SUBSYSTEM_MAP_KADDR, NULL, 0);
- if (IS_ERR(audio->map_v_read)) {
- MM_ERR("could not map DMA buffers\n");
- rc = -ENOMEM;
- free_contiguous_memory_by_paddr(audio->phys);
- goto done;
- }
- audio->data = audio->map_v_read->vaddr;
+
+ client = msm_ion_client_create(UINT_MAX, "Audio_AMR_In_Client");
+ if (IS_ERR_OR_NULL(client)) {
+ MM_ERR("Unable to create ION client\n");
+ rc = -ENOMEM;
+ goto client_create_error;
+ }
+ audio->client = client;
+
+ handle = ion_alloc(client, DMASZ, SZ_4K,
+ ION_HEAP(ION_AUDIO_HEAP_ID));
+ if (IS_ERR_OR_NULL(handle)) {
+ MM_ERR("Unable to create allocate O/P buffers\n");
+ rc = -ENOMEM;
+ goto buff_alloc_error;
+ }
+ audio->buff_handle = handle;
+
+ rc = ion_phys(client, handle, &addr, &len);
+ if (rc) {
+ MM_ERR("O/P buffers:Invalid phy: %x sz: %x\n",
+ (unsigned int) addr, (unsigned int) len);
+ goto buff_get_phys_error;
} else {
- MM_ERR("could not allocate DMA buffers\n");
+ MM_INFO("O/P buffers:valid phy: %x sz: %x\n",
+ (unsigned int) addr, (unsigned int) len);
+ }
+ audio->phys = (int32_t)addr;
+
+ rc = ion_handle_get_flags(client, handle, &ionflag);
+ if (rc) {
+ MM_ERR("could not get flags for the handle\n");
+ goto buff_get_flags_error;
+ }
+
+ audio->map_v_read = ion_map_kernel(client, handle, ionflag);
+ if (IS_ERR(audio->map_v_read)) {
+ MM_ERR("could not map write buffers\n");
rc = -ENOMEM;
- goto done;
+ goto buff_map_error;
}
+ audio->data = (char *)audio->map_v_read;
+ MM_DBG("write buf: phy addr 0x%08x kernel addr 0x%08x\n",
+ audio->phys, (int)audio->data);
+
MM_DBG("Memory addr = 0x%8x phy addr = 0x%8x\n",\
(int) audio->data, (int) audio->phys);
if ((file->f_mode & FMODE_WRITE) &&
@@ -874,6 +910,14 @@ evt_error:
msm_adsp_put(audio->audrec);
audpreproc_aenc_free(audio->enc_id);
mutex_unlock(&audio->lock);
+ ion_unmap_kernel(client, audio->buff_handle);
+buff_map_error:
+buff_get_phys_error:
+buff_get_flags_error:
+ ion_free(client, audio->buff_handle);
+buff_alloc_error:
+ ion_client_destroy(client);
+client_create_error:
return rc;
}
file:50621c994a905ded26624a1bf43c4f3af39bfd55 -> file:6e45bda98945269943baecc214963b406b40a80e
--- a/arch/arm/mach-msm/qdsp5v2/audio_evrc_in.c
+++ b/arch/arm/mach-msm/qdsp5v2/audio_evrc_in.c
@@ -27,7 +27,7 @@
#include <linux/wait.h>
#include <linux/dma-mapping.h>
#include <linux/msm_audio_qcp.h>
-#include <linux/android_pmem.h>
+#include <linux/ion.h>
#include <linux/memory_alloc.h>
#include <mach/msm_adsp.h>
@@ -138,6 +138,9 @@ struct audio_in {
int running;
int stopped; /* set when stopped, cleared on flush */
char *build_id;
+ struct ion_client *client;
+ struct ion_handle *input_buff_handle;
+ struct ion_handle *output_buff_handle;
};
struct audio_frame {
@@ -1319,15 +1322,16 @@ static int audevrc_in_release(struct ino
audio->audrec = NULL;
audio->opened = 0;
if (audio->data) {
- msm_subsystem_unmap_buffer(audio->map_v_read);
- free_contiguous_memory_by_paddr(audio->phys);
+ ion_unmap_kernel(audio->client, audio->input_buff_handle);
+ ion_free(audio->client, audio->input_buff_handle);
audio->data = NULL;
}
if (audio->out_data) {
- msm_subsystem_unmap_buffer(audio->map_v_write);
- free_contiguous_memory_by_paddr(audio->out_phys);
+ ion_unmap_kernel(audio->client, audio->output_buff_handle);
+ ion_free(audio->client, audio->output_buff_handle);
audio->out_data = NULL;
}
+ ion_client_destroy(audio->client);
mutex_unlock(&audio->lock);
return 0;
}
@@ -1338,30 +1342,65 @@ static int audevrc_in_open(struct inode
struct audio_in *audio = &the_audio_evrc_in;
int rc;
int encid;
+ int len = 0;
+ unsigned long ionflag = 0;
+ ion_phys_addr_t addr = 0;
+ struct ion_handle *handle = NULL;
+ struct ion_client *client = NULL;
mutex_lock(&audio->lock);
if (audio->opened) {
rc = -EBUSY;
goto done;
}
- audio->phys = allocate_contiguous_ebi_nomap(DMASZ, SZ_4K);
- if (audio->phys) {
- audio->map_v_read = msm_subsystem_map_buffer(
- audio->phys, DMASZ,
- MSM_SUBSYSTEM_MAP_KADDR,
- NULL, 0);
- if (IS_ERR(audio->map_v_read)) {
- MM_ERR("failed to map read physical address\n");
- rc = -ENOMEM;
- free_contiguous_memory_by_paddr(audio->phys);
- goto done;
- }
- audio->data = audio->map_v_read->vaddr;
+
+ client = msm_ion_client_create(UINT_MAX, "Audio_EVRC_in_client");
+ if (IS_ERR_OR_NULL(client)) {
+ MM_ERR("Unable to create ION client\n");
+ rc = -ENOMEM;
+ goto client_create_error;
+ }
+ audio->client = client;
+
+ MM_DBG("allocating mem sz = %d\n", DMASZ);
+ handle = ion_alloc(client, DMASZ, SZ_4K,
+ ION_HEAP(ION_AUDIO_HEAP_ID));
+ if (IS_ERR_OR_NULL(handle)) {
+ MM_ERR("Unable to create allocate O/P buffers\n");
+ rc = -ENOMEM;
+ goto output_buff_alloc_error;
+ }
+
+ audio->output_buff_handle = handle;
+
+ rc = ion_phys(client , handle, &addr, &len);
+ if (rc) {
+ MM_ERR("O/P buffers:Invalid phy: %x sz: %x\n",
+ (unsigned int) addr, (unsigned int) len);
+ rc = -ENOMEM;
+ goto output_buff_get_phys_error;
} else {
- MM_ERR("could not allocate DMA buffers\n");
+ MM_INFO("O/P buffers:valid phy: %x sz: %x\n",
+ (unsigned int) addr, (unsigned int) len);
+ }
+ audio->phys = (int32_t)addr;
+
+ rc = ion_handle_get_flags(client, handle, &ionflag);
+ if (rc) {
+ MM_ERR("could not get flags for the handle\n");
rc = -ENOMEM;
- goto done;
+ goto output_buff_get_flags_error;
}
+
+ audio->map_v_read = ion_map_kernel(client, handle, ionflag);
+ if (IS_ERR(audio->map_v_read)) {
+ MM_ERR("could not map read buffers,freeing instance 0x%08x\n",
+ (int)audio);
+ rc = -ENOMEM;
+ goto output_buff_map_error;
+ }
+ audio->data = (char *)audio->map_v_read;
+
MM_DBG("Memory addr = 0x%8x phy addr = 0x%8x\n",\
(int) audio->data, (int) audio->phys);
if ((file->f_mode & FMODE_WRITE) &&
@@ -1418,27 +1457,49 @@ static int audevrc_in_open(struct inode
audevrc_in_flush(audio);
audevrc_out_flush(audio);
- audio->out_phys = allocate_contiguous_ebi_nomap(BUFFER_SIZE,
- SZ_4K);
- if (!audio->out_phys) {
- MM_ERR("could not allocate write buffers\n");
+ MM_DBG("allocating BUFFER_SIZE %d\n", BUFFER_SIZE);
+ handle = ion_alloc(client, BUFFER_SIZE,
+ SZ_4K, ION_HEAP(ION_AUDIO_HEAP_ID));
+ if (IS_ERR_OR_NULL(handle)) {
+ MM_ERR("Unable to create allocate I/P buffers\n");
rc = -ENOMEM;
- goto evt_error;
+ goto input_buff_alloc_error;
+ }
+
+ audio->input_buff_handle = handle;
+
+ rc = ion_phys(client , handle, &addr, &len);
+ if (rc) {
+ MM_ERR("I/P buffers:Invalid phy: %x sz: %x\n",
+ (unsigned int) addr, (unsigned int) len);
+ rc = -ENOMEM;
+ goto input_buff_alloc_error;
} else {
- audio->map_v_write = msm_subsystem_map_buffer(
- audio->out_phys, BUFFER_SIZE,
- MSM_SUBSYSTEM_MAP_KADDR,
- NULL, 0);
- if (IS_ERR(audio->map_v_write)) {
- MM_ERR("could map write buffers\n");
- rc = -ENOMEM;
- free_contiguous_memory_by_paddr(audio->out_phys);
- goto evt_error;
- }
- audio->out_data = audio->map_v_write->vaddr;
- MM_DBG("write buf: phy addr 0x%08x kernel addr 0x%08x\n",
- audio->out_phys, (int)audio->out_data);
+ MM_INFO("Got valid phy: %x sz: %x\n",
+ (unsigned int) addr,
+ (unsigned int) len);
+ }
+ audio->out_phys = (int32_t)addr;
+
+ rc = ion_handle_get_flags(client,
+ handle, &ionflag);
+ if (rc) {
+ MM_ERR("could not get flags for the handle\n");
+ rc = -ENOMEM;
+ goto input_buff_alloc_error;
+ }
+
+ audio->map_v_write = ion_map_kernel(client,
+ handle, ionflag);
+ if (IS_ERR(audio->map_v_write)) {
+ MM_ERR("could not map write buffers\n");
+ rc = -ENOMEM;
+ goto input_buff_map_error;
}
+ audio->out_data = (char *)audio->map_v_write;
+ MM_DBG("write buf: phy addr 0x%08x kernel addr 0x%08x\n",
+ (unsigned int)addr,
+ (unsigned int)audio->out_data);
/* Initialize buffer */
audio->out[0].data = audio->out_data + 0;
@@ -1479,6 +1540,17 @@ evt_error:
msm_adsp_put(audio->audrec);
audpreproc_aenc_free(audio->enc_id);
mutex_unlock(&audio->lock);
+input_buff_map_error:
+ ion_free(client, audio->input_buff_handle);
+input_buff_alloc_error:
+ ion_unmap_kernel(client, audio->output_buff_handle);
+output_buff_map_error:
+output_buff_get_phys_error:
+output_buff_get_flags_error:
+ ion_free(client, audio->output_buff_handle);
+output_buff_alloc_error:
+ ion_client_destroy(client);
+client_create_error:
return rc;
}
file:c38fefc2287bd5a7b61199bed25850ba7fe0fc84 -> file:bff7c330352797477888bd6da8e5535c2cf8777e
--- a/arch/arm/mach-msm/qdsp5v2/audio_lpa.c
+++ b/arch/arm/mach-msm/qdsp5v2/audio_lpa.c
@@ -2,7 +2,7 @@
*
* Copyright (C) 2008 Google, Inc.
* Copyright (C) 2008 HTC Corporation
- * Copyright (c) 2009-2011, Code Aurora Forum. All rights reserved.
+ * Copyright (c) 2009-2011, The Linux Foundation. All rights reserved.
*
* This software is licensed under the terms of the GNU General Public
* License version 2, as published by the Free Software Foundation, and
@@ -27,7 +27,7 @@
#include <linux/delay.h>
#include <linux/earlysuspend.h>
#include <linux/list.h>
-#include <linux/android_pmem.h>
+#include <linux/ion.h>
#include <asm/atomic.h>
#include <asm/ioctls.h>
#include <mach/msm_adsp.h>
@@ -132,9 +132,9 @@ struct audlpa_event {
union msm_audio_event_payload payload;
};
-struct audlpa_pmem_region {
+struct audlpa_ion_region {
struct list_head list;
- struct file *file;
+ struct ion_handle *handle;
int fd;
void *vaddr;
unsigned long paddr;
@@ -166,7 +166,7 @@ static int auddec_dsp_config(struct audi
static void audio_dsp_event(void *private, unsigned id, uint16_t *msg);
static void audlpa_post_event(struct audio *audio, int type,
union msm_audio_event_payload payload);
-static unsigned long audlpa_pmem_fixup(struct audio *audio, void *addr,
+static unsigned long audlpa_ion_fixup(struct audio *audio, void *addr,
unsigned long len, int ref_up);
static void audlpa_async_send_data(struct audio *audio, unsigned needed,
uint32_t *payload);
@@ -753,7 +753,7 @@ static long audlpa_process_event_req(str
if (drv_evt->event_type == AUDIO_EVENT_WRITE_DONE ||
drv_evt->event_type == AUDIO_EVENT_READ_DONE) {
mutex_lock(&audio->lock);
- audlpa_pmem_fixup(audio, drv_evt->payload.aio_buf.buf_addr,
+ audlpa_ion_fixup(audio, drv_evt->payload.aio_buf.buf_addr,
drv_evt->payload.aio_buf.buf_len, 0);
mutex_unlock(&audio->lock);
}
@@ -763,94 +763,118 @@ static long audlpa_process_event_req(str
return rc;
}
-static int audlpa_pmem_check(struct audio *audio,
+static int audlpa_ion_check(struct audio *audio,
void *vaddr, unsigned long len)
{
- struct audlpa_pmem_region *region_elt;
- struct audlpa_pmem_region t = { .vaddr = vaddr, .len = len };
+ struct audlpa_ion_region *region_elt;
+ struct audlpa_ion_region t = {.vaddr = vaddr, .len = len };
- list_for_each_entry(region_elt, &audio->pmem_region_queue, list) {
+ list_for_each_entry(region_elt, &audio->ion_region_queue, list) {
if (CONTAINS(region_elt, &t) || CONTAINS(&t, region_elt) ||
OVERLAPS(region_elt, &t)) {
- MM_ERR("region (vaddr %p len %ld)"
+ MM_ERR("[%p]:region (vaddr %p len %ld)"
" clashes with registered region"
" (vaddr %p paddr %p len %ld)\n",
- vaddr, len,
+ audio, vaddr, len,
region_elt->vaddr,
- (void *)region_elt->paddr,
- region_elt->len);
+ (void *)region_elt->paddr, region_elt->len);
return -EINVAL;
}
}
return 0;
}
-
-static int audlpa_pmem_add(struct audio *audio,
- struct msm_audio_pmem_info *info)
+static int audlpa_ion_add(struct audio *audio,
+ struct msm_audio_ion_info *info)
{
- unsigned long paddr, kvaddr, len;
- struct file *file;
- struct audlpa_pmem_region *region;
+ ion_phys_addr_t paddr;
+ size_t len;
+ unsigned long kvaddr;
+ struct audlpa_ion_region *region;
int rc = -EINVAL;
+ struct ion_handle *handle;
+ unsigned long ionflag;
- MM_DBG("\n"); /* Macro prints the file name and function */
+ MM_ERR("\n"); /* Macro prints the file name and function */
region = kmalloc(sizeof(*region), GFP_KERNEL);
if (!region) {
rc = -ENOMEM;
goto end;
}
-
- if (get_pmem_file(info->fd, &paddr, &kvaddr, &len, &file)) {
- kfree(region);
- goto end;
+ handle = ion_import_fd(audio->client, info->fd);
+ if (IS_ERR_OR_NULL(handle)) {
+ pr_err("%s: could not get handle of the given fd\n", __func__);
+ goto import_error;
}
-
- rc = audlpa_pmem_check(audio, info->vaddr, len);
+ rc = ion_handle_get_flags(audio->client, handle, &ionflag);
+ if (rc) {
+ pr_err("%s: could not get flags for the handle\n", __func__);
+ goto flag_error;
+ }
+ kvaddr = (unsigned long)ion_map_kernel(audio->client, handle, ionflag);
+ if (IS_ERR_OR_NULL((void *)kvaddr)) {
+ pr_err("%s: could not get virtual address\n", __func__);
+ goto map_error;
+ }
+ rc = ion_phys(audio->client, handle, &paddr, &len);
+ if (rc) {
+ pr_err("%s: could not get physical address\n", __func__);
+ goto ion_error;
+ }
+ rc = audlpa_ion_check(audio, info->vaddr, len);
if (rc < 0) {
- put_pmem_file(file);
- kfree(region);
- goto end;
+ MM_ERR("audpcm_ion_check failed\n");
+ goto ion_error;
}
-
+ region->handle = handle;
region->vaddr = info->vaddr;
region->fd = info->fd;
region->paddr = paddr;
region->kvaddr = kvaddr;
region->len = len;
- region->file = file;
region->ref_cnt = 0;
- MM_DBG("add region paddr %lx vaddr %p, len %lu\n", region->paddr,
- region->vaddr, region->len);
- list_add_tail(&region->list, &audio->pmem_region_queue);
+ MM_DBG("[%p]:add region paddr %lx vaddr %p, len %lu kvaddr %lx\n",
+ audio, region->paddr, region->vaddr,
+ region->len, region->kvaddr);
+ list_add_tail(&region->list, &audio->ion_region_queue);
+
+ return rc;
+
+ion_error:
+ ion_unmap_kernel(audio->client, handle);
+map_error:
+flag_error:
+ ion_free(audio->client, handle);
+import_error:
+ kfree(region);
end:
return rc;
}
-static int audlpa_pmem_remove(struct audio *audio,
- struct msm_audio_pmem_info *info)
+static int audlpa_ion_remove(struct audio *audio,
+ struct msm_audio_ion_info *info)
{
- struct audlpa_pmem_region *region;
+ struct audlpa_ion_region *region;
struct list_head *ptr, *next;
int rc = -EINVAL;
- MM_DBG("info fd %d vaddr %p\n", info->fd, info->vaddr);
+ list_for_each_safe(ptr, next, &audio->ion_region_queue) {
+ region = list_entry(ptr, struct audlpa_ion_region, list);
- list_for_each_safe(ptr, next, &audio->pmem_region_queue) {
- region = list_entry(ptr, struct audlpa_pmem_region, list);
-
- if ((region->fd == info->fd) &&
+ if (region != NULL && (region->fd == info->fd) &&
(region->vaddr == info->vaddr)) {
if (region->ref_cnt) {
- MM_DBG("region %p in use ref_cnt %d\n",
- region, region->ref_cnt);
+ MM_DBG("%s[%p]:region %p in use ref_cnt %d\n",
+ __func__, audio, region,
+ region->ref_cnt);
break;
}
MM_DBG("remove region fd %d vaddr %p\n",
info->fd, info->vaddr);
list_del(&region->list);
- put_pmem_file(region->file);
+ ion_unmap_kernel(audio->client, region->handle);
+ ion_free(audio->client, region->handle);
kfree(region);
rc = 0;
break;
@@ -860,23 +884,20 @@ static int audlpa_pmem_remove(struct aud
return rc;
}
-static int audlpa_pmem_lookup_vaddr(struct audio *audio, void *addr,
- unsigned long len, struct audlpa_pmem_region **region)
+static int audlpa_ion_lookup_vaddr(struct audio *audio, void *addr,
+ unsigned long len, struct audlpa_ion_region **region)
{
- struct audlpa_pmem_region *region_elt;
-
+ struct audlpa_ion_region *region_elt;
int match_count = 0;
-
*region = NULL;
/* returns physical address or zero */
- list_for_each_entry(region_elt, &audio->pmem_region_queue,
- list) {
+ list_for_each_entry(region_elt, &audio->ion_region_queue, list) {
if (addr >= region_elt->vaddr &&
addr < region_elt->vaddr + region_elt->len &&
addr + len <= region_elt->vaddr + region_elt->len) {
/* offset since we could pass vaddr inside a registerd
- * pmem buffer
+ * ion buffer
*/
match_count++;
@@ -886,13 +907,16 @@ static int audlpa_pmem_lookup_vaddr(stru
}
if (match_count > 1) {
- MM_ERR("multiple hits for vaddr %p, len %ld\n", addr, len);
- list_for_each_entry(region_elt,
- &audio->pmem_region_queue, list) {
+ MM_ERR("%s[%p]:multiple hits for vaddr %p, len %ld\n",
+ __func__, audio, addr, len);
+ list_for_each_entry(region_elt, &audio->ion_region_queue,
+ list) {
if (addr >= region_elt->vaddr &&
addr < region_elt->vaddr + region_elt->len &&
addr + len <= region_elt->vaddr + region_elt->len)
- MM_ERR("\t%p, %ld --> %p\n", region_elt->vaddr,
+ MM_ERR("\t%s[%p]:%p, %ld --> %p\n",
+ __func__, audio,
+ region_elt->vaddr,
region_elt->len,
(void *)region_elt->paddr);
}
@@ -900,17 +924,17 @@ static int audlpa_pmem_lookup_vaddr(stru
return *region ? 0 : -1;
}
-
-unsigned long audlpa_pmem_fixup(struct audio *audio, void *addr,
+static unsigned long audlpa_ion_fixup(struct audio *audio, void *addr,
unsigned long len, int ref_up)
{
- struct audlpa_pmem_region *region;
+ struct audlpa_ion_region *region;
unsigned long paddr;
int ret;
- ret = audlpa_pmem_lookup_vaddr(audio, addr, len, &region);
+ ret = audlpa_ion_lookup_vaddr(audio, addr, len, &region);
if (ret) {
- MM_ERR("lookup (%p, %ld) failed\n", addr, len);
+ MM_ERR("%s[%p]:lookup (%p, %ld) failed\n",
+ __func__, audio, addr, len);
return 0;
}
if (ref_up)
@@ -944,7 +968,7 @@ static int audlpa_aio_buf_add(struct aud
buf_node->buf.buf_addr, buf_node->buf.buf_len,
buf_node->buf.data_len);
- buf_node->paddr = audlpa_pmem_fixup(
+ buf_node->paddr = audlpa_ion_fixup(
audio, buf_node->buf.buf_addr,
buf_node->buf.buf_len, 1);
@@ -1232,25 +1256,26 @@ static long audio_ioctl(struct file *fil
audio->drv_status &= ~ADRV_STATUS_PAUSE;
break;
- case AUDIO_REGISTER_PMEM: {
- struct msm_audio_pmem_info info;
- MM_DBG("AUDIO_REGISTER_PMEM\n");
- if (copy_from_user(&info, (void *) arg, sizeof(info)))
+ case AUDIO_REGISTER_ION: {
+ struct msm_audio_ion_info info;
+ MM_DBG("AUDIO_REGISTER_ION\n");
+ if (copy_from_user(&info, (void *) arg, sizeof(info)))
rc = -EFAULT;
else
- rc = audlpa_pmem_add(audio, &info);
+ rc = audlpa_ion_add(audio, &info);
break;
}
- case AUDIO_DEREGISTER_PMEM: {
- struct msm_audio_pmem_info info;
- MM_DBG("AUDIO_DEREGISTER_PMEM\n");
- if (copy_from_user(&info, (void *) arg, sizeof(info)))
+ case AUDIO_DEREGISTER_ION: {
+ struct msm_audio_ion_info info;
+ MM_DBG("AUDIO_DEREGISTER_ION\n");
+ if (copy_from_user(&info, (void *) arg, sizeof(info)))
rc = -EFAULT;
else
- rc = audlpa_pmem_remove(audio, &info);
+ rc = audlpa_ion_remove(audio, &info);
break;
}
+
case AUDIO_ASYNC_WRITE:
if (audio->drv_status & ADRV_STATUS_FSYNC)
rc = -EBUSY;
@@ -1336,15 +1361,16 @@ int audlpa_fsync(struct file *file, int
return audlpa_async_fsync(audio);
}
-static void audlpa_reset_pmem_region(struct audio *audio)
+static void audpcm_reset_ion_region(struct audio *audio)
{
- struct audlpa_pmem_region *region;
+ struct audlpa_ion_region *region;
struct list_head *ptr, *next;
- list_for_each_safe(ptr, next, &audio->pmem_region_queue) {
- region = list_entry(ptr, struct audlpa_pmem_region, list);
+ list_for_each_safe(ptr, next, &audio->ion_region_queue) {
+ region = list_entry(ptr, struct audlpa_ion_region, list);
list_del(&region->list);
- put_pmem_file(region->file);
+ ion_unmap_kernel(audio->client, region->handle);
+ ion_free(audio->client, region->handle);
kfree(region);
}
@@ -1362,7 +1388,7 @@ static int audio_release(struct inode *i
auddev_unregister_evt_listner(AUDDEV_CLNT_DEC, audio->dec_id);
audio_disable(audio);
audlpa_async_flush(audio);
- audlpa_reset_pmem_region(audio);
+ audpcm_reset_ion_region(audio);
msm_adsp_put(audio->audplay);
audpp_adec_free(audio->dec_id);
@@ -1373,13 +1399,12 @@ static int audio_release(struct inode *i
audio->event_abort = 1;
wake_up(&audio->event_wait);
audlpa_reset_event_queue(audio);
- iounmap(audio->data);
- pmem_kfree(audio->phys);
mutex_unlock(&audio->lock);
#ifdef CONFIG_DEBUG_FS
if (audio->dentry)
debugfs_remove(audio->dentry);
#endif
+ ion_client_destroy(audio->client);
kfree(audio);
return 0;
}
@@ -1550,7 +1575,7 @@ static int audio_open(struct inode *inod
spin_lock_init(&audio->dsp_lock);
init_waitqueue_head(&audio->write_wait);
INIT_LIST_HEAD(&audio->out_queue);
- INIT_LIST_HEAD(&audio->pmem_region_queue);
+ INIT_LIST_HEAD(&audio->ion_region_queue);
INIT_LIST_HEAD(&audio->free_event_queue);
INIT_LIST_HEAD(&audio->event_queue);
init_waitqueue_head(&audio->wait);
@@ -1611,13 +1636,19 @@ static int audio_open(struct inode *inod
break;
}
}
+
+ audio->client = msm_ion_client_create(UINT_MAX, "Audio_LPA_Client");
+ if (IS_ERR_OR_NULL(audio->client)) {
+ pr_err("Unable to create ION client\n");
+ goto err;
+ }
+ MM_DBG("Ion client created\n");
+
done:
return rc;
event_err:
msm_adsp_put(audio->audplay);
err:
- iounmap(audio->data);
- pmem_kfree(audio->phys);
audpp_adec_free(audio->dec_id);
MM_INFO("audio instance 0x%08x freeing\n", (int)audio);
kfree(audio);
file:dc41bf41de41d3d166f891f0e978f4e2a3e3dc1c -> file:06d84cedf9fe9bba2d3a9ef2d68518e93ce8d0e1
--- a/arch/arm/mach-msm/qdsp5v2/audio_mvs.c
+++ b/arch/arm/mach-msm/qdsp5v2/audio_mvs.c
@@ -319,6 +319,7 @@ struct audio_mvs_info_type {
wait_queue_head_t wait;
wait_queue_head_t mode_wait;
+ wait_queue_head_t in_wait;
wait_queue_head_t out_wait;
struct mutex lock;
@@ -1146,6 +1147,7 @@ static void audio_mvs_process_rpc_reques
mutex_unlock(&audio->in_lock);
+ wake_up(&audio->in_wait);
dl_reply.valid_frame_info_ptr = cpu_to_be32(0x00000001);
dl_reply.frame_mode = cpu_to_be32(audio->frame_mode);
@@ -1489,40 +1491,52 @@ static ssize_t audio_mvs_write(struct fi
pr_debug("%s:\n", __func__);
- mutex_lock(&audio->in_lock);
- if (audio->state == AUDIO_MVS_STARTED) {
- if (count <= sizeof(struct msm_audio_mvs_frame)) {
- if (!list_empty(&audio->free_in_queue)) {
- buf_node =
- list_first_entry(&audio->free_in_queue,
+ rc = wait_event_interruptible_timeout(audio->in_wait,
+ (!list_empty(&audio->free_in_queue) ||
+ audio->state == AUDIO_MVS_STOPPED), 1 * HZ);
+ if (rc > 0) {
+ mutex_lock(&audio->in_lock);
+ if (audio->state == AUDIO_MVS_STARTED) {
+ if (count <= sizeof(struct msm_audio_mvs_frame)) {
+ if (!list_empty(&audio->free_in_queue)) {
+ buf_node = list_first_entry(
+ &audio->free_in_queue,
struct audio_mvs_buf_node,
list);
- list_del(&buf_node->list);
+ list_del(&buf_node->list);
- rc = copy_from_user(&buf_node->frame,
- buf,
- count);
+ rc = copy_from_user(&buf_node->frame,
+ buf,
+ count);
- list_add_tail(&buf_node->list,
- &audio->in_queue);
+ list_add_tail(&buf_node->list,
+ &audio->in_queue);
+ } else {
+ pr_err("%s: No free DL buffs\n", __func__);
+ }
} else {
- pr_err("%s: No free DL buffs\n", __func__);
+ pr_err("%s: Write count %d < sizeof(frame) %d",
+ __func__, count,
+ sizeof(struct msm_audio_mvs_frame));
+
+ rc = -ENOMEM;
}
} else {
- pr_err("%s: Write count %d < sizeof(frame) %d",
- __func__, count,
- sizeof(struct msm_audio_mvs_frame));
+ pr_err("%s: Write performed in invalid state %d\n",
+ __func__, audio->state);
- rc = -ENOMEM;
+ rc = -EPERM;
}
+ mutex_unlock(&audio->in_lock);
+ } else if (rc == 0) {
+ pr_err("%s: No free DL buffs\n", __func__);
+
+ rc = -ETIMEDOUT;
} else {
- pr_err("%s: Write performed in invalid state %d\n",
- __func__, audio->state);
+ pr_err("%s: write was interrupted\n", __func__);
- rc = -EPERM;
+ rc = -ERESTARTSYS;
}
- mutex_unlock(&audio->in_lock);
-
return rc;
}
@@ -1661,6 +1675,7 @@ static int __init audio_mvs_init(void)
init_waitqueue_head(&audio_mvs_info.wait);
init_waitqueue_head(&audio_mvs_info.mode_wait);
+ init_waitqueue_head(&audio_mvs_info.in_wait);
init_waitqueue_head(&audio_mvs_info.out_wait);
INIT_LIST_HEAD(&audio_mvs_info.in_queue);
file:9a9318564f73da7514311f992e6a699bc929722a -> file:9d523ec7b55130f9d638bbe639cc34d58c953bb4
--- a/arch/arm/mach-msm/qdsp5v2/audio_out.c
+++ b/arch/arm/mach-msm/qdsp5v2/audio_out.c
@@ -3,7 +3,7 @@
*
* Copyright (C) 2008 Google, Inc.
* Copyright (C) 2008 HTC Corporation
- * Copyright (c) 2009-2011, Code Aurora Forum. All rights reserved.
+ * Copyright (c) 2009-2012, The Linux Foundation. All rights reserved.
*
* This software is licensed under the terms of the GNU General Public
* License version 2, as published by the Free Software Foundation, and
@@ -43,7 +43,7 @@
#include <mach/qdsp5v2/audpp.h>
#include <mach/qdsp5v2/audio_dev_ctl.h>
#include <mach/msm_memtypes.h>
-
+#include <linux/ion.h>
#include <mach/htc_pwrsink.h>
#include <mach/debug_mm.h>
@@ -99,6 +99,8 @@ struct audio {
struct wake_lock idlelock;
struct audpp_cmd_cfg_object_params_volume vol_pan;
+ struct ion_client *client;
+ struct ion_handle *buff_handle;
};
static void audio_out_listener(u32 evt_id, union auddev_evt_data *evt_payload,
@@ -702,22 +704,53 @@ struct miscdevice audio_misc = {
static int __init audio_init(void)
{
- the_audio.phys = allocate_contiguous_ebi_nomap(DMASZ, SZ_4K);
- if (the_audio.phys) {
- the_audio.map_v_write = msm_subsystem_map_buffer(
- the_audio.phys, DMASZ,
- MSM_SUBSYSTEM_MAP_KADDR,
- NULL, 0);
- if (IS_ERR(the_audio.map_v_write)) {
- MM_ERR("could not map physical buffers\n");
- free_contiguous_memory_by_paddr(the_audio.phys);
- return -ENOMEM;
- }
- the_audio.data = the_audio.map_v_write->vaddr;
- } else {
- MM_ERR("could not allocate physical buffers\n");
- return -ENOMEM;
+ unsigned long ionflag = 0;
+ ion_phys_addr_t addr = 0;
+ int rc;
+ int len = 0;
+ struct ion_handle *handle = NULL;
+ struct ion_client *client = NULL;
+
+ client = msm_ion_client_create(UINT_MAX, "HostPCM");
+ if (IS_ERR_OR_NULL(client)) {
+ MM_ERR("Unable to create ION client\n");
+ rc = -ENOMEM;
+ goto client_create_error;
+ }
+ the_audio.client = client;
+
+ handle = ion_alloc(client, DMASZ, SZ_4K,
+ ION_HEAP(ION_AUDIO_HEAP_ID));
+ if (IS_ERR_OR_NULL(handle)) {
+ MM_ERR("Unable to create allocate O/P buffers\n");
+ rc = -ENOMEM;
+ goto buff_alloc_error;
}
+ the_audio.buff_handle = handle;
+
+ rc = ion_phys(client, handle, &addr, &len);
+ if (rc) {
+ MM_ERR("O/P buffers:Invalid phy: %x sz: %x\n",
+ (unsigned int) addr, (unsigned int) len);
+ goto buff_get_phys_error;
+ } else
+ MM_INFO("O/P buffers:valid phy: %x sz: %x\n",
+ (unsigned int) addr, (unsigned int) len);
+ the_audio.phys = (int32_t)addr;
+
+ rc = ion_handle_get_flags(client, handle, &ionflag);
+ if (rc) {
+ MM_ERR("could not get flags for the handle\n");
+ goto buff_get_flags_error;
+ }
+
+ the_audio.map_v_write = ion_map_kernel(client, handle, ionflag);
+ if (IS_ERR(the_audio.map_v_write)) {
+ MM_ERR("could not map write buffers\n");
+ rc = -ENOMEM;
+ goto buff_map_error;
+ }
+ the_audio.data = (char *)the_audio.map_v_write;
MM_DBG("Memory addr = 0x%8x phy addr = 0x%8x\n",\
(int) the_audio.data, (int) the_audio.phys);
mutex_init(&the_audio.lock);
@@ -727,6 +760,15 @@ static int __init audio_init(void)
wake_lock_init(&the_audio.wakelock, WAKE_LOCK_SUSPEND, "audio_pcm");
wake_lock_init(&the_audio.idlelock, WAKE_LOCK_IDLE, "audio_pcm_idle");
return misc_register(&audio_misc);
+buff_map_error:
+buff_get_phys_error:
+buff_get_flags_error:
+ ion_free(client, the_audio.buff_handle);
+buff_alloc_error:
+ ion_client_destroy(client);
+client_create_error:
+ return rc;
+
}
late_initcall(audio_init);
file:a5a9bd27e6cde7270b74dfc42f449cb07397cba2 -> file:662f350a035ecf54618e9a91c94dd45bf19f4bc1
--- a/arch/arm/mach-msm/qdsp5v2/audio_pcm_in.c
+++ b/arch/arm/mach-msm/qdsp5v2/audio_pcm_in.c
@@ -3,7 +3,7 @@
*
* Copyright (C) 2008 Google, Inc.
* Copyright (C) 2008 HTC Corporation
- * Copyright (c) 2009-2011, Code Aurora Forum. All rights reserved.
+ * Copyright (c) 2009-2012, The Linux Foundation. All rights reserved.
*
* This software is licensed under the terms of the GNU General Public
* License version 2, as published by the Free Software Foundation, and
@@ -27,7 +27,7 @@
#include <linux/wait.h>
#include <linux/dma-mapping.h>
#include <linux/msm_audio.h>
-#include <linux/android_pmem.h>
+#include <linux/ion.h>
#include <linux/memory_alloc.h>
#include <mach/msm_memtypes.h>
@@ -122,6 +122,8 @@ struct audio_in {
int abort; /* set when error, like sample rate mismatch */
int dual_mic_config;
char *build_id;
+ struct ion_client *client;
+ struct ion_handle *output_buff_handle;
};
static struct audio_in the_audio_in;
@@ -843,10 +845,11 @@ static int audpcm_in_release(struct inod
audio->audrec = NULL;
audio->opened = 0;
if (audio->data) {
- msm_subsystem_unmap_buffer(audio->map_v_read);
- free_contiguous_memory_by_paddr(audio->phys);
+ ion_unmap_kernel(audio->client, audio->output_buff_handle);
+ ion_free(audio->client, audio->output_buff_handle);
audio->data = NULL;
}
+ ion_client_destroy(audio->client);
mutex_unlock(&audio->lock);
return 0;
}
@@ -856,29 +859,68 @@ static int audpcm_in_open(struct inode *
struct audio_in *audio = &the_audio_in;
int rc;
int encid;
+ int len = 0;
+ unsigned long ionflag = 0;
+ ion_phys_addr_t addr = 0;
+ struct ion_handle *handle = NULL;
+ struct ion_client *client = NULL;
mutex_lock(&audio->lock);
if (audio->opened) {
rc = -EBUSY;
goto done;
}
- audio->phys = allocate_contiguous_ebi_nomap(DMASZ, SZ_4K);
- if (audio->phys) {
- audio->map_v_read = msm_subsystem_map_buffer(
- audio->phys, DMASZ,
- MSM_SUBSYSTEM_MAP_KADDR, NULL, 0);
- if (IS_ERR(audio->map_v_read)) {
- MM_ERR("could not map read phys buffers\n");
- rc = -ENOMEM;
- free_contiguous_memory_by_paddr(audio->phys);
- goto done;
- }
- audio->data = audio->map_v_read->vaddr;
+
+ client = msm_ion_client_create(UINT_MAX, "Audio_PCM_in_client");
+ if (IS_ERR_OR_NULL(client)) {
+ MM_ERR("Unable to create ION client\n");
+ rc = -ENOMEM;
+ goto client_create_error;
+ }
+ audio->client = client;
+
+ MM_DBG("allocating mem sz = %d\n", DMASZ);
+ handle = ion_alloc(client, DMASZ, SZ_4K,
+ ION_HEAP(ION_AUDIO_HEAP_ID));
+ if (IS_ERR_OR_NULL(handle)) {
+ MM_ERR("Unable to create allocate O/P buffers\n");
+ rc = -ENOMEM;
+ goto output_buff_alloc_error;
+ }
+
+ audio->output_buff_handle = handle;
+
+ rc = ion_phys(client , handle, &addr, &len);
+ if (rc) {
+ MM_ERR("O/P buffers:Invalid phy: %x sz: %x\n",
+ (unsigned int) addr, (unsigned int) len);
+ rc = -ENOMEM;
+ goto output_buff_get_phys_error;
} else {
- MM_ERR("could not allocate read buffers\n");
+ MM_INFO("O/P buffers:valid phy: %x sz: %x\n",
+ (unsigned int) addr, (unsigned int) len);
+ }
+ audio->phys = (int32_t)addr;
+
+ rc = ion_handle_get_flags(client, handle, &ionflag);
+ if (rc) {
+ MM_ERR("could not get flags for the handle\n");
rc = -ENOMEM;
- goto done;
+ goto output_buff_get_flags_error;
}
+
+ audio->map_v_read = ion_map_kernel(client, handle, ionflag);
+ if (IS_ERR(audio->data)) {
+ MM_ERR("could not map read buffers,freeing instance 0x%08x\n",
+ (int)audio);
+ rc = -ENOMEM;
+ goto output_buff_map_error;
+ }
+ MM_DBG("read buf: phy addr 0x%08x kernel addr 0x%08x\n",
+ audio->phys, (int)audio->data);
+
+ audio->data = (char *)audio->map_v_read;
+
MM_DBG("Memory addr = 0x%8x phy addr = 0x%8x\n",\
(int) audio->data, (int) audio->phys);
if ((file->f_mode & FMODE_WRITE) &&
@@ -944,6 +986,13 @@ done:
mutex_unlock(&audio->lock);
return rc;
evt_error:
+output_buff_map_error:
+output_buff_get_phys_error:
+output_buff_get_flags_error:
+ ion_free(client, audio->output_buff_handle);
+output_buff_alloc_error:
+ ion_client_destroy(client);
+client_create_error:
msm_adsp_put(audio->audrec);
audpreproc_aenc_free(audio->enc_id);
mutex_unlock(&audio->lock);
file:d34499dff6a6a12ae9269f60d0ea0a9691eeb705 -> file:6eac8cf2bc01a9397abde83e624c807ad0315526
--- a/arch/arm/mach-msm/qdsp5v2/audio_qcelp_in.c
+++ b/arch/arm/mach-msm/qdsp5v2/audio_qcelp_in.c
@@ -27,7 +27,7 @@
#include <linux/wait.h>
#include <linux/dma-mapping.h>
#include <linux/msm_audio_qcp.h>
-#include <linux/android_pmem.h>
+#include <linux/ion.h>
#include <linux/memory_alloc.h>
#include <mach/msm_adsp.h>
@@ -141,6 +141,9 @@ struct audio_in {
int running;
int stopped; /* set when stopped, cleared on flush */
char *build_id;
+ struct ion_client *client;
+ struct ion_handle *input_buff_handle;
+ struct ion_handle *output_buff_handle;
};
struct audio_frame {
@@ -1325,15 +1328,16 @@ static int audqcelp_in_release(struct in
audio->audrec = NULL;
audio->opened = 0;
if (audio->data) {
- msm_subsystem_unmap_buffer(audio->map_v_read);
- free_contiguous_memory_by_paddr(audio->phys);
+ ion_unmap_kernel(audio->client, audio->input_buff_handle);
+ ion_free(audio->client, audio->input_buff_handle);
audio->data = NULL;
}
if (audio->out_data) {
- msm_subsystem_unmap_buffer(audio->map_v_write);
- free_contiguous_memory_by_paddr(audio->out_phys);
+ ion_unmap_kernel(audio->client, audio->output_buff_handle);
+ ion_free(audio->client, audio->output_buff_handle);
audio->out_data = NULL;
}
+ ion_client_destroy(audio->client);
mutex_unlock(&audio->lock);
return 0;
}
@@ -1344,29 +1348,64 @@ static int audqcelp_in_open(struct inode
struct audio_in *audio = &the_audio_qcelp_in;
int rc;
int encid;
+ int len = 0;
+ unsigned long ionflag = 0;
+ ion_phys_addr_t addr = 0;
+ struct ion_handle *handle = NULL;
+ struct ion_client *client = NULL;
mutex_lock(&audio->lock);
if (audio->opened) {
rc = -EBUSY;
goto done;
}
- audio->phys = allocate_contiguous_ebi_nomap(DMASZ, SZ_4K);
- if (audio->phys) {
- audio->map_v_read = msm_subsystem_map_buffer(
- audio->phys, DMASZ,
- MSM_SUBSYSTEM_MAP_KADDR, NULL, 0);
- if (IS_ERR(audio->map_v_read)) {
- MM_ERR("could not map DMA buffers\n");
- rc = -ENOMEM;
- free_contiguous_memory_by_paddr(audio->phys);
- goto done;
- }
- audio->data = audio->map_v_read->vaddr;
+ client = msm_ion_client_create(UINT_MAX, "Audio_EVRC_in_client");
+ if (IS_ERR_OR_NULL(client)) {
+ MM_ERR("Unable to create ION client\n");
+ rc = -ENOMEM;
+ goto client_create_error;
+ }
+ audio->client = client;
+
+ MM_DBG("allocating mem sz = %d\n", DMASZ);
+ handle = ion_alloc(client, DMASZ, SZ_4K,
+ ION_HEAP(ION_AUDIO_HEAP_ID));
+ if (IS_ERR_OR_NULL(handle)) {
+ MM_ERR("Unable to create allocate O/P buffers\n");
+ rc = -ENOMEM;
+ goto output_buff_alloc_error;
+ }
+
+ audio->output_buff_handle = handle;
+
+ rc = ion_phys(client , handle, &addr, &len);
+ if (rc) {
+ MM_ERR("O/P buffers:Invalid phy: %x sz: %x\n",
+ (unsigned int) addr, (unsigned int) len);
+ rc = -ENOMEM;
+ goto output_buff_get_phys_error;
} else {
- MM_ERR("could not allocate DMA buffers\n");
+ MM_INFO("O/P buffers:valid phy: %x sz: %x\n",
+ (unsigned int) addr, (unsigned int) len);
+ }
+ audio->phys = (int32_t)addr;
+
+ rc = ion_handle_get_flags(client, handle, &ionflag);
+ if (rc) {
+ MM_ERR("could not get flags for the handle\n");
rc = -ENOMEM;
- goto done;
+ goto output_buff_get_flags_error;
}
+
+ audio->map_v_read = ion_map_kernel(client, handle, ionflag);
+ if (IS_ERR(audio->map_v_read)) {
+ MM_ERR("could not map read buffers,freeing instance 0x%08x\n",
+ (int)audio);
+ rc = -ENOMEM;
+ goto output_buff_map_error;
+ }
+ audio->data = (char *)audio->map_v_read;
+
MM_DBG("Memory addr = 0x%8x phy addr = 0x%8x\n",\
(int) audio->data, (int) audio->phys);
if ((file->f_mode & FMODE_WRITE) &&
@@ -1425,25 +1464,49 @@ static int audqcelp_in_open(struct inode
audqcelp_in_flush(audio);
audqcelp_out_flush(audio);
- audio->out_phys = allocate_contiguous_ebi_nomap(BUFFER_SIZE, SZ_4K);
- if (!audio->out_phys) {
- MM_ERR("could not allocate write buffers\n");
+ MM_DBG("allocating BUFFER_SIZE %d\n", BUFFER_SIZE);
+ handle = ion_alloc(client, BUFFER_SIZE,
+ SZ_4K, ION_HEAP(ION_AUDIO_HEAP_ID));
+ if (IS_ERR_OR_NULL(handle)) {
+ MM_ERR("Unable to create allocate I/P buffers\n");
rc = -ENOMEM;
- goto evt_error;
+ goto input_buff_alloc_error;
+ }
+
+ audio->input_buff_handle = handle;
+
+ rc = ion_phys(client , handle, &addr, &len);
+ if (rc) {
+ MM_ERR("I/P buffers:Invalid phy: %x sz: %x\n",
+ (unsigned int) addr, (unsigned int) len);
+ rc = -ENOMEM;
+ goto input_buff_alloc_error;
} else {
- audio->map_v_write = msm_subsystem_map_buffer(
- audio->out_phys, BUFFER_SIZE,
- MSM_SUBSYSTEM_MAP_KADDR, NULL, 0);
- if (IS_ERR(audio->map_v_write)) {
- MM_ERR("could not map write buffers\n");
- rc = -ENOMEM;
- free_contiguous_memory_by_paddr(audio->out_phys);
- goto evt_error;
- }
- audio->out_data = audio->map_v_write->vaddr;
- MM_DBG("write buf: phy addr 0x%08x kernel addr 0x%08x\n",
- audio->out_phys, (int)audio->out_data);
+ MM_INFO("Got valid phy: %x sz: %x\n",
+ (unsigned int) addr,
+ (unsigned int) len);
+ }
+ audio->out_phys = (int32_t)addr;
+
+ rc = ion_handle_get_flags(client,
+ handle, &ionflag);
+ if (rc) {
+ MM_ERR("could not get flags for the handle\n");
+ rc = -ENOMEM;
+ goto input_buff_alloc_error;
+ }
+
+ audio->map_v_write = ion_map_kernel(client,
+ handle, ionflag);
+ if (IS_ERR(audio->map_v_write)) {
+ MM_ERR("could not map write buffers\n");
+ rc = -ENOMEM;
+ goto input_buff_map_error;
}
+ audio->out_data = (char *)audio->map_v_write;
+ MM_DBG("write buf: phy addr 0x%08x kernel addr 0x%08x\n",
+ (unsigned int)addr,
+ (unsigned int)audio->out_data);
/* Initialize buffer */
audio->out[0].data = audio->out_data + 0;
@@ -1483,6 +1546,17 @@ evt_error:
msm_adsp_put(audio->audrec);
audpreproc_aenc_free(audio->enc_id);
mutex_unlock(&audio->lock);
+input_buff_map_error:
+ ion_free(client, audio->input_buff_handle);
+input_buff_alloc_error:
+ ion_unmap_kernel(client, audio->output_buff_handle);
+output_buff_map_error:
+output_buff_get_phys_error:
+output_buff_get_flags_error:
+ ion_free(client, audio->output_buff_handle);
+output_buff_alloc_error:
+ ion_client_destroy(client);
+client_create_error:
return rc;
}
file:464f66e93e91da822f190d36a6e4e8baae3d86c5 -> file:81a45ab85373f9092353dca3708e983e830bb762
--- a/arch/arm/mach-msm/qdsp5v2/audio_wma.c
+++ b/arch/arm/mach-msm/qdsp5v2/audio_wma.c
@@ -35,12 +35,11 @@
#include <linux/delay.h>
#include <linux/list.h>
#include <linux/earlysuspend.h>
-#include <linux/android_pmem.h>
#include <linux/slab.h>
#include <linux/msm_audio.h>
#include <linux/msm_audio_wma.h>
#include <linux/memory_alloc.h>
-#include <mach/qdsp5v2/audio_dev_ctl.h>
+#include <linux/ion.h>
#include <mach/msm_adsp.h>
#include <mach/iommu.h>
@@ -191,6 +190,9 @@ struct audio {
int eq_needs_commit;
struct audpp_cmd_cfg_object_params_eqalizer eq;
struct audpp_cmd_cfg_object_params_volume vol_pan;
+ struct ion_client *client;
+ struct ion_handle *input_buff_handle;
+ struct ion_handle *output_buff_handle;
};
static int auddec_dsp_config(struct audio *audio, int enable);
@@ -814,6 +816,10 @@ static long audio_ioctl(struct file *fil
uint16_t enable_mask;
int enable;
int prev_state;
+ unsigned long ionflag = 0;
+ ion_phys_addr_t addr = 0;
+ struct ion_handle *handle = NULL;
+ int len = 0;
MM_DBG("cmd = %d\n", cmd);
@@ -1052,31 +1058,59 @@ static long audio_ioctl(struct file *fil
MM_DBG("allocate PCM buffer %d\n",
config.buffer_count *
config.buffer_size);
- audio->read_phys =
- allocate_contiguous_ebi_nomap(
- config.buffer_size *
- config.buffer_count,
- SZ_4K);
- if (!audio->read_phys) {
+ handle = ion_alloc(audio->client,
+ (config.buffer_size *
+ config.buffer_count),
+ SZ_4K, ION_HEAP(ION_AUDIO_HEAP_ID));
+ if (IS_ERR_OR_NULL(handle)) {
+ MM_ERR("Unable to alloc I/P buffs\n");
+ audio->input_buff_handle = NULL;
+ rc = -ENOMEM;
+ break;
+ }
+
+ audio->input_buff_handle = handle;
+
+ rc = ion_phys(audio->client ,
+ handle, &addr, &len);
+ if (rc) {
+ MM_ERR("Invalid phy: %x sz: %x\n",
+ (unsigned int) addr,
+ (unsigned int) len);
+ ion_free(audio->client, handle);
+ audio->input_buff_handle = NULL;
+ rc = -ENOMEM;
+ break;
+ } else {
+ MM_INFO("Got valid phy: %x sz: %x\n",
+ (unsigned int) audio->read_phys,
+ (unsigned int) len);
+ }
+ audio->read_phys = (int32_t)addr;
+
+ rc = ion_handle_get_flags(audio->client,
+ handle, &ionflag);
+ if (rc) {
+ MM_ERR("could not get flags\n");
+ ion_free(audio->client, handle);
+ audio->input_buff_handle = NULL;
rc = -ENOMEM;
break;
}
- audio->map_v_read = msm_subsystem_map_buffer(
- audio->read_phys,
- config.buffer_size *
- config.buffer_count,
- MSM_SUBSYSTEM_MAP_KADDR
- , NULL, 0);
+
+ audio->map_v_read = ion_map_kernel(
+ audio->client,
+ handle, ionflag);
if (IS_ERR(audio->map_v_read)) {
- MM_ERR("read buf alloc fail\n");
+ MM_ERR("map of read buf failed\n");
+ ion_free(audio->client, handle);
+ audio->input_buff_handle = NULL;
rc = -ENOMEM;
- free_contiguous_memory_by_paddr(
- audio->read_phys);
} else {
uint8_t index;
uint32_t offset = 0;
audio->read_data =
- audio->map_v_read->vaddr;
+ (char *)audio->map_v_read;
audio->buf_refresh = 0;
audio->pcm_buf_count =
config.buffer_count;
@@ -1457,12 +1491,13 @@ static int audio_release(struct inode *i
audio->event_abort = 1;
wake_up(&audio->event_wait);
audwma_reset_event_queue(audio);
- msm_subsystem_unmap_buffer(audio->map_v_write);
- free_contiguous_memory_by_paddr(audio->phys);
- if (audio->read_data) {
- msm_subsystem_unmap_buffer(audio->map_v_read);
- free_contiguous_memory_by_paddr(audio->read_phys);
+ ion_unmap_kernel(audio->client, audio->output_buff_handle);
+ ion_free(audio->client, audio->output_buff_handle);
+ if (audio->input_buff_handle != NULL) {
+ ion_unmap_kernel(audio->client, audio->input_buff_handle);
+ ion_free(audio->client, audio->input_buff_handle);
}
+ ion_client_destroy(audio->client);
mutex_unlock(&audio->lock);
#ifdef CONFIG_DEBUG_FS
if (audio->dentry)
@@ -1603,8 +1638,13 @@ static int audio_open(struct inode *inod
{
struct audio *audio = NULL;
int rc, dec_attrb, decid, i;
- unsigned pmem_sz = DMASZ_MAX;
+ unsigned mem_sz = DMASZ_MAX;
struct audwma_event *e_node = NULL;
+ unsigned long ionflag = 0;
+ ion_phys_addr_t addr = 0;
+ struct ion_handle *handle = NULL;
+ struct ion_client *client = NULL;
+ int len = 0;
#ifdef CONFIG_DEBUG_FS
/* 4 bytes represents decoder number, 1 byte for terminate string */
char name[sizeof "msm_wma_" + 5];
@@ -1647,39 +1687,52 @@ static int audio_open(struct inode *inod
}
audio->dec_id = decid & MSM_AUD_DECODER_MASK;
- while (pmem_sz >= DMASZ_MIN) {
- MM_DBG("pmemsz = %d\n", pmem_sz);
- audio->phys = allocate_contiguous_ebi_nomap(pmem_sz, SZ_4K);
- if (audio->phys) {
- audio->map_v_write = msm_subsystem_map_buffer(
- audio->phys, pmem_sz,
- MSM_SUBSYSTEM_MAP_KADDR,
- NULL, 0);
- if (IS_ERR(audio->map_v_write)) {
- MM_ERR("could not allocate write buffers, \
- freeing instance 0x%08x\n",
- (int)audio);
- rc = -ENOMEM;
- free_contiguous_memory_by_paddr(audio->phys);
- audpp_adec_free(audio->dec_id);
- kfree(audio);
- goto done;
- }
- audio->data = audio->map_v_write->vaddr;
- MM_DBG("write buf: phy addr 0x%08x kernel addr \
- 0x%08x\n", audio->phys, (int)audio->data);
- break;
- } else if (pmem_sz == DMASZ_MIN) {
- MM_ERR("could not allocate write buffers, freeing \
- instance 0x%08x\n", (int)audio);
- rc = -ENOMEM;
- audpp_adec_free(audio->dec_id);
- kfree(audio);
- goto done;
- } else
- pmem_sz >>= 1;
+ client = msm_ion_client_create(UINT_MAX, "Audio_WMA_Client");
+ if (IS_ERR_OR_NULL(client)) {
+ pr_err("Unable to create ION client\n");
+ rc = -ENOMEM;
+ goto client_create_error;
+ }
+ audio->client = client;
+
+ handle = ion_alloc(client, mem_sz, SZ_4K,
+ ION_HEAP(ION_AUDIO_HEAP_ID));
+ if (IS_ERR_OR_NULL(handle)) {
+ MM_ERR("Unable to create allocate O/P buffers\n");
+ rc = -ENOMEM;
+ goto output_buff_alloc_error;
+ }
+ audio->output_buff_handle = handle;
+
+ rc = ion_phys(client, handle, &addr, &len);
+ if (rc) {
+ MM_ERR("O/P buffers:Invalid phy: %x sz: %x\n",
+ (unsigned int) addr, (unsigned int) len);
+ goto output_buff_get_phys_error;
+ } else {
+ MM_INFO("O/P buffers:valid phy: %x sz: %x\n",
+ (unsigned int) addr, (unsigned int) len);
}
- audio->out_dma_sz = pmem_sz;
+ audio->phys = (int32_t)addr;
+
+
+ rc = ion_handle_get_flags(client, handle, &ionflag);
+ if (rc) {
+ MM_ERR("could not get flags for the handle\n");
+ goto output_buff_get_flags_error;
+ }
+
+ audio->map_v_write = ion_map_kernel(client, handle, ionflag);
+ if (IS_ERR(audio->map_v_write)) {
+ MM_ERR("could not map write buffers\n");
+ rc = -ENOMEM;
+ goto output_buff_map_error;
+ }
+ audio->data = (char *)audio->map_v_write;
+ MM_DBG("write buf: phy addr 0x%08x kernel addr 0x%08x\n",
+ audio->phys, (int)audio->data);
+
+ audio->out_dma_sz = mem_sz;
rc = msm_adsp_get(audio->module_name, &audio->audplay,
&audplay_adsp_ops_wma, audio);
@@ -1771,8 +1824,14 @@ done:
event_err:
msm_adsp_put(audio->audplay);
err:
- msm_subsystem_unmap_buffer(audio->map_v_write);
- free_contiguous_memory_by_paddr(audio->phys);
+ ion_unmap_kernel(client, audio->output_buff_handle);
+output_buff_map_error:
+output_buff_get_phys_error:
+output_buff_get_flags_error:
+ ion_free(client, audio->output_buff_handle);
+output_buff_alloc_error:
+ ion_client_destroy(client);
+client_create_error:
audpp_adec_free(audio->dec_id);
kfree(audio);
return rc;
file:a697fa79247b3d22562c950a171b3ffc7befa5ea -> file:119938c05cbd76a38bd9311c9c1e22145ab6102b
--- a/arch/arm/mach-msm/qdsp6v2/audio_lpa.c
+++ b/arch/arm/mach-msm/qdsp6v2/audio_lpa.c
@@ -1084,8 +1084,8 @@ static int audio_release(struct inode *i
if (audio->out_enabled)
audlpa_async_flush(audio);
audio->wflush = 0;
- audlpa_unmap_pmem_region(audio);
audio_disable(audio);
+ audlpa_unmap_pmem_region(audio);
msm_clear_session_id(audio->ac->session);
auddev_unregister_evt_listner(AUDDEV_CLNT_DEC, audio->ac->session);
q6asm_audio_client_free(audio->ac);
file:b05c7f56185be35c95daea3b16e271fac5f2ecfb -> file:dde7461d485e7e3ddde3e5f4a5f4ac8549ed311f
--- a/arch/arm/mach-msm/qdsp6v2/audio_utils_aio.c
+++ b/arch/arm/mach-msm/qdsp6v2/audio_utils_aio.c
@@ -201,7 +201,7 @@ static unsigned long audio_aio_pmem_fixu
static int audio_aio_pause(struct q6audio_aio *audio)
{
- int rc = 0;
+ int rc = -EINVAL;
pr_debug("%s[%p], enabled = %d\n", __func__, audio,
audio->enabled);
@@ -424,6 +424,27 @@ void audio_aio_async_in_flush(struct q6a
}
}
+static void audio_aio_unmap_pmem_region(struct q6audio_aio *audio)
+{
+ struct audio_aio_pmem_region *region;
+ struct list_head *ptr, *next;
+ int rc = -EINVAL;
+
+ pr_debug("%s[%p]:\n", __func__, audio);
+ list_for_each_safe(ptr, next, &audio->pmem_region_queue) {
+ region = list_entry(ptr, struct audio_aio_pmem_region, list);
+ pr_debug("%s[%p]: phy_address = 0x%lx\n",
+ __func__, audio, region->paddr);
+ if (region != NULL) {
+ rc = q6asm_memory_unmap(audio->ac,
+ (uint32_t)region->paddr, IN);
+ if (rc < 0)
+ pr_err("%s[%p]: memory unmap failed\n",
+ __func__, audio);
+ }
+ }
+}
+
void audio_aio_cb(uint32_t opcode, uint32_t token,
uint32_t *payload, struct q6audio_aio *audio)
{
@@ -558,27 +579,6 @@ void audio_aio_reset_event_queue(struct
return;
}
-static void audio_aio_unmap_pmem_region(struct q6audio_aio *audio)
-{
- struct audio_aio_pmem_region *region;
- struct list_head *ptr, *next;
- int rc = -EINVAL;
-
- pr_debug("%s[%p]:\n", __func__, audio);
- list_for_each_safe(ptr, next, &audio->pmem_region_queue) {
- region = list_entry(ptr, struct audio_aio_pmem_region, list);
- pr_debug("%s[%p]: phy_address = 0x%lx\n",
- __func__, audio, region->paddr);
- if (region != NULL) {
- rc = q6asm_memory_unmap(audio->ac,
- (uint32_t)region->paddr, IN);
- if (rc < 0)
- pr_err("%s[%p]: memory unmap failed\n",
- __func__, audio);
- }
- }
-}
-
int audio_aio_release(struct inode *inode, struct file *file)
{
struct q6audio_aio *audio = file->private_data;
@@ -590,8 +590,8 @@ int audio_aio_release(struct inode *inod
audio->wflush = 0;
audio->drv_ops.out_flush(audio);
audio->drv_ops.in_flush(audio);
- audio_aio_unmap_pmem_region(audio);
audio_aio_disable(audio);
+ audio_aio_unmap_pmem_region(audio);
audio_aio_reset_pmem_region(audio);
audio->event_abort = 1;
wake_up(&audio->event_wait);
@@ -1237,9 +1237,12 @@ long audio_aio_ioctl(struct file *file,
mutex_lock(&audio->lock);
if (arg == 1) {
rc = audio_aio_pause(audio);
- if (rc < 0)
+ if (rc < 0) {
pr_err("%s[%p]: pause FAILED rc=%d\n",
__func__, audio, rc);
+ mutex_unlock(&audio->lock);
+ break;
+ }
audio->drv_status |= ADRV_STATUS_PAUSE;
} else if (arg == 0) {
if (audio->drv_status & ADRV_STATUS_PAUSE) {
file:17fd5d9593077d9cb67de90240270ff061740f18 -> file:fd07eb5072bd9808d1a7a7389c8a1a42596d7a6e
--- a/arch/arm/mach-msm/sec_debug.c
+++ b/arch/arm/mach-msm/sec_debug.c
@@ -46,6 +46,9 @@
#include <linux/fcntl.h>
#include <linux/fs.h>
#endif
+#ifdef CONFIG_SEC_DEBUG_DOUBLE_FREE
+#include <linux/circ_buf.h>
+#endif
enum sec_debug_upload_cause_t {
UPLOAD_CAUSE_INIT = 0xCAFEBABE,
@@ -230,6 +233,125 @@ static int rwsem_debug_init;
static spinlock_t rwsem_debug_lock;
#endif /* CONFIG_SEC_DEBUG_SEMAPHORE_LOG */
+#ifdef CONFIG_SEC_DEBUG_DOUBLE_FREE
+#define KFREE_HOOK_BYPASS_MASK 0x1
+#define KFREE_CIRC_BUF_SIZE (1<<15)
+#define KFREE_FREE_MAGIC 0xf4eef4ee
+static DEFINE_SPINLOCK(circ_buf_lock);
+struct kfree_info_entry {
+ void *addr;
+ void *caller;
+};
+
+struct kfree_circ_buf {
+ int head;
+ int tail;
+ struct kfree_info_entry entry[KFREE_CIRC_BUF_SIZE];
+};
+
+struct kfree_circ_buf kfree_circ_buf;
+
+static void *circ_buf_lookup(struct kfree_circ_buf *circ_buf, void *addr)
+{
+ int i;
+ for (i = circ_buf->tail; i != circ_buf->head ;
+ i = (i + 1) & (KFREE_CIRC_BUF_SIZE - 1)) {
+ if (circ_buf->entry[i].addr == addr)
+ return &circ_buf->entry[i];
+ }
+
+ return NULL;
+ }
+
+static void *circ_buf_get(struct kfree_circ_buf *circ_buf)
+{
+ void *entry;
+ entry = &circ_buf->entry[circ_buf->tail];
+ smp_rmb();
+ circ_buf->tail = (circ_buf->tail + 1) &
+ (KFREE_CIRC_BUF_SIZE - 1);
+ return entry;
+}
+
+static void *circ_buf_put(struct kfree_circ_buf *circ_buf,
+ struct kfree_info_entry *entry)
+{
+ memcpy(&circ_buf->entry[circ_buf->head], entry, sizeof(*entry));
+ smp_wmb();
+ circ_buf->head = (circ_buf->head + 1) &
+ (KFREE_CIRC_BUF_SIZE - 1);
+ return entry;
+}
+
+void *kfree_hook(void *p, void *caller)
+{
+ unsigned int flags;
+ struct kfree_info_entry *match = NULL;
+ void *tofree = NULL;
+ unsigned int addr = (unsigned int)p;
+
+ if (!virt_addr_valid(addr)) {
+ /* there are too many NULL pointers so don't print for NULL */
+ if (addr)
+ pr_debug("%s: trying to free an invalid addr %x from %pS\n",
+ __func__, addr, caller);
+ return NULL;
+ }
+ if (addr&0x1) {
+ /* return original address to free */
+ return (void *)(addr&~(KFREE_HOOK_BYPASS_MASK));
+ }
+
+ spin_lock_irqsave(&circ_buf_lock, flags);
+
+ if (kfree_circ_buf.head == 0)
+ pr_debug("%s: circular buffer head rounded to zero.", __func__);
+
+ if (*(unsigned int *)p == KFREE_FREE_MAGIC) {
+ /* memory that is to be freed may originally have had magic
+ * value, so search the whole circ buf for an actual match */
+ match = circ_buf_lookup(&kfree_circ_buf, p);
+ }
+
+ if (match) {
+ pr_err("%s: 0x%08x was already freed by %pS()\n",
+ __func__, p, match->caller);
+ spin_unlock_irqrestore(&circ_buf_lock, flags);
+ panic("double free detected!");
+ return NULL;
+ } else {
+ struct kfree_info_entry entry;
+
+ /* mark free magic on the freeing node */
+ *(unsigned int *)p = KFREE_FREE_MAGIC;
+
+ /* do an actual kfree for the oldest entry
+ * if the circular buffer is full */
+ if (CIRC_SPACE(kfree_circ_buf.head, kfree_circ_buf.tail,
+ KFREE_CIRC_BUF_SIZE) == 0) {
+ struct kfree_info_entry *pentry;
+ pentry = circ_buf_get(&kfree_circ_buf);
+ if (pentry)
+ tofree = pentry->addr;
+ }
+
+ /* add the new entry to the circular buffer */
+ entry.addr = p;
+ entry.caller = caller;
+ circ_buf_put(&kfree_circ_buf, &entry);
+ if (tofree) {
+ spin_unlock_irqrestore(&circ_buf_lock, flags);
+ kfree((void *)((unsigned int)tofree |
+ KFREE_HOOK_BYPASS_MASK));
+ return NULL;
+ }
+ }
+
+ spin_unlock_irqrestore(&circ_buf_lock, flags);
+ return NULL;
+}
+#endif
+
/* onlyjazz.ed26 : make the restart_reason global to enable it early
in sec_debug_init and share with restart functions */
void *restart_reason;
@@ -270,6 +392,17 @@ static int force_error(const char *val,
mb();
pr_info("*p = %x\n", *(unsigned int *)p);
pr_emerg("Clk may be enabled.Try again if it reaches here!\n");
+ } else if (!strncmp(val, "dblfree", 7)) {
+ void *p = kmalloc(sizeof(int), GFP_KERNEL);
+ kfree(p);
+ msleep(1000);
+ kfree(p);
+ } else if (!strncmp(val, "lowmem", 6)) {
+ int i = 0;
+ pr_emerg("Allocating memory until failure!\n");
+ while (kmalloc(128*1024, GFP_KERNEL))
+ i++;
+ pr_emerg("Allocated %d KB!\n", i*128);
} else {
pr_emerg("No such error defined for now!\n");
}
file:b2a8f9c3d1a9ba24b10a67f3e539117febf7f029 -> file:3d9a1552cef60321f5349438067149979e055b6e
--- a/arch/arm/mm/copypage-v6.c
+++ b/arch/arm/mm/copypage-v6.c
@@ -41,7 +41,6 @@ static void v6_copy_user_highpage_nonali
kfrom = kmap_atomic(from, KM_USER0);
kto = kmap_atomic(to, KM_USER1);
copy_page(kto, kfrom);
- __cpuc_flush_dcache_area(kto, PAGE_SIZE);
kunmap_atomic(kto, KM_USER1);
kunmap_atomic(kfrom, KM_USER0);
}
file:a31afb89cb952c21c2090319556d36a48269130b -> file:960df7b39c29ac4494c9e87d50a7566a9e29091b
--- a/arch/arm/mm/mmu.c
+++ b/arch/arm/mm/mmu.c
@@ -32,6 +32,12 @@
#include "mm.h"
+//Siso - Added for DCM booting - Nov 17th
+#if defined(CONFIG_MACH_M2_DCM)
+ #include <mach/msm8960-gpio.h>
+#endif
+//
+
/*
* empty_zero_page is a special page that is used for
* zero-initialized data and COW.
@@ -796,8 +802,17 @@ void __init sanity_check_meminfo(void)
int i, j, highmem = 0;
#ifdef CONFIG_DONT_MAP_HOLE_AFTER_MEMBANK0
+#if defined(CONFIG_MACH_M2_DCM) //Siso - Added for DCM booting - Nov 17th
+
+ if(system_rev > BOARD_REV07)
+ {
+ find_membank0_hole();
+ }
+
+#else
find_membank0_hole();
#endif
+#endif
#if (defined CONFIG_HIGHMEM) && (defined CONFIG_FIX_MOVABLE_ZONE)
if (movable_reserved_size && __pa(vmalloc_min) > movable_reserved_start)
file:5ef7ba6b6a76a3251956329ffd9ebcfe85ce66b9 -> file:d0583a4489e60ee59a6cc0950d7342594a4d5780
--- a/crypto/authenc.c
+++ b/crypto/authenc.c
@@ -336,7 +336,7 @@ static int crypto_authenc_genicv(struct
cryptlen += ivsize;
}
- if (sg_is_last(assoc)) {
+ if (req->assoclen && sg_is_last(assoc)) {
authenc_ahash_fn = crypto_authenc_ahash;
sg_init_table(asg, 2);
sg_set_page(asg, sg_page(assoc), assoc->length, assoc->offset);
@@ -490,7 +490,7 @@ static int crypto_authenc_iverify(struct
cryptlen += ivsize;
}
- if (sg_is_last(assoc)) {
+ if (req->assoclen && sg_is_last(assoc)) {
authenc_ahash_fn = crypto_authenc_ahash;
sg_init_table(asg, 2);
sg_set_page(asg, sg_page(assoc), assoc->length, assoc->offset);
file:5cf85028561aeb9511721e6d6d768a0e2986dc48 -> file:f38da0361d88e126b3e205034f48d3b23c9d15cd
--- a/drivers/char/diag/diagchar.h
+++ b/drivers/char/diag/diagchar.h
@@ -27,6 +27,7 @@
#define IN_BUF_SIZE 16384
#define MAX_IN_BUF_SIZE 32768
#define MAX_SYNC_OBJ_NAME_SIZE 32
+#define UINT32_MAX UINT_MAX
/* Size of the buffer used for deframing a packet
reveived from the PC tool*/
#define HDLC_MAX 4096
file:2b762a4e9e0e861c50a00bb24fe76c7d82c26a8b -> file:7efee0e77a5c0cb21397f1624a968b8fc2fb1b15
--- a/drivers/char/diag/diagchar_core.c
+++ b/drivers/char/diag/diagchar_core.c
@@ -269,7 +269,7 @@ void diag_clear_reg(int proc_num)
}
void diag_add_reg(int j, struct bindpkt_params *params,
- int *success, int *count_entries)
+ int *success, unsigned int *count_entries)
{
*success = 1;
driver->table[j].cmd_code = params->cmd_code;
@@ -289,75 +289,158 @@ void diag_add_reg(int j, struct bindpkt_
long diagchar_ioctl(struct file *filp,
unsigned int iocmd, unsigned long ioarg)
{
- int i, j, count_entries = 0, temp;
- int success = -1;
+
+ int i, j, temp, success = -1;
+ unsigned int count_entries = 0, interim_count = 0;
void *temp_buf;
if (iocmd == DIAG_IOCTL_COMMAND_REG) {
- struct bindpkt_params_per_process *pkt_params =
- (struct bindpkt_params_per_process *) ioarg;
+ struct bindpkt_params_per_process pkt_params;
+ struct bindpkt_params *params;
+ struct bindpkt_params *head_params;
+ if (copy_from_user(&pkt_params, (void *)ioarg,
+ sizeof(struct bindpkt_params_per_process))) {
+ return -EFAULT;
+ }
+ if ((UINT32_MAX/sizeof(struct bindpkt_params)) <
+ pkt_params.count) {
+ pr_alert("diag: integer overflow while multiply\n");
+ return -EFAULT;
+ }
+ params = kzalloc(pkt_params.count*sizeof(
+ struct bindpkt_params), GFP_KERNEL);
+ if (!params) {
+ pr_alert("diag: unable to alloc memory\n");
+ return -ENOMEM;
+ } else
+ head_params = params;
+
+ if (copy_from_user(params, pkt_params.params,
+ pkt_params.count*sizeof(struct bindpkt_params))) {
+ kfree(head_params);
+ return -EFAULT;
+ }
+
mutex_lock(&driver->diagchar_mutex);
for (i = 0; i < diag_max_reg; i++) {
if (driver->table[i].process_id == 0) {
- diag_add_reg(i, pkt_params->params,
- &success, &count_entries);
- if (pkt_params->count > count_entries) {
- pkt_params->params++;
- } else {
+ diag_add_reg(i, params, &success,
+ &count_entries);
+ if (pkt_params.count > count_entries) {
+ params++;
+ } else {
mutex_unlock(&driver->diagchar_mutex);
+ kfree(head_params);
return success;
}
}
}
if (i < diag_threshold_reg) {
- /* Increase table size by amount required */
- diag_max_reg += pkt_params->count -
- count_entries;
+ /* Increase table size by amount required */
+ if (pkt_params.count >= count_entries) {
+ interim_count = pkt_params.count -
+ count_entries;
+ } else {
+ pr_alert("diag: error in params count\n");
+ kfree(head_params);
+ mutex_unlock(&driver->diagchar_mutex);
+ return -EFAULT;
+ }
+ if (UINT32_MAX - diag_max_reg >=
+ interim_count) {
+ diag_max_reg += interim_count;
+ } else {
+ pr_alert("diag: Integer overflow\n");
+ kfree(head_params);
+ mutex_unlock(&driver->diagchar_mutex);
+ return -EFAULT;
+ }
+
/* Make sure size doesnt go beyond threshold */
if (diag_max_reg > diag_threshold_reg) {
diag_max_reg = diag_threshold_reg;
pr_info("diag: best case memory allocation\n");
}
+ if (UINT32_MAX/sizeof(struct diag_master_table) <
+ diag_max_reg) {
+ pr_alert("diag: integer overflow\n");
+ kfree(head_params);
+ mutex_unlock(&driver->diagchar_mutex);
+ return -EFAULT;
+ }
+
temp_buf = krealloc(driver->table,
diag_max_reg*sizeof(struct
diag_master_table), GFP_KERNEL);
if (!temp_buf) {
- diag_max_reg -= pkt_params->count -
- count_entries;
- pr_alert("diag: Insufficient memory for reg.");
+ pr_alert("diag: Insufficient memory for reg.\n");
mutex_unlock(&driver->diagchar_mutex);
+
+ if (pkt_params.count >= count_entries) {
+ interim_count = pkt_params.count -
+ count_entries;
+ } else {
+ pr_alert("diag: params count error\n");
+ mutex_unlock(&driver->diagchar_mutex);
+ kfree(head_params);
+ return -EFAULT;
+ }
+ if (diag_max_reg >= interim_count) {
+ diag_max_reg -= interim_count;
+ } else {
+ pr_alert("diag: Integer underflow\n");
+ mutex_unlock(&driver->diagchar_mutex);
+ kfree(head_params);
+ return -EFAULT;
+ }
+ kfree(head_params);
+
return 0;
} else {
driver->table = temp_buf;
}
for (j = i; j < diag_max_reg; j++) {
- diag_add_reg(j, pkt_params->params,
- &success, &count_entries);
- if (pkt_params->count > count_entries) {
- pkt_params->params++;
+ diag_add_reg(j, params, &success,
+ &count_entries);
+ if (pkt_params.count > count_entries) {
+ params++;
+
} else {
mutex_unlock(&driver->diagchar_mutex);
+ kfree(head_params);
return success;
}
}
+ kfree(head_params);
mutex_unlock(&driver->diagchar_mutex);
} else {
mutex_unlock(&driver->diagchar_mutex);
+ kfree(head_params);
pr_err("Max size reached, Pkt Registration failed for"
" Process %d", current->tgid);
}
success = 0;
} else if (iocmd == DIAG_IOCTL_GET_DELAYED_RSP_ID) {
- struct diagpkt_delay_params *delay_params =
- (struct diagpkt_delay_params *) ioarg;
+ struct diagpkt_delay_params delay_params;
+ uint16_t interim_rsp_id;
+ int interim_size;
+ if (copy_from_user(&delay_params, (void *)ioarg,
+ sizeof(struct diagpkt_delay_params)))
+ return -EFAULT;
+ if ((delay_params.rsp_ptr) &&
+ (delay_params.size == sizeof(delayed_rsp_id)) &&
+ (delay_params.num_bytes_ptr)) {
+ interim_rsp_id = DIAGPKT_NEXT_DELAYED_RSP_ID(
+ delayed_rsp_id);
+ if (copy_to_user((void *)delay_params.rsp_ptr,
+ &interim_rsp_id, sizeof(uint16_t)))
+ return -EFAULT;
+ interim_size = sizeof(delayed_rsp_id);
+ if (copy_to_user((void *)delay_params.num_bytes_ptr,
+ &interim_size, sizeof(int)))
+ return -EFAULT;
- if ((delay_params->rsp_ptr) &&
- (delay_params->size == sizeof(delayed_rsp_id)) &&
- (delay_params->num_bytes_ptr)) {
- *((uint16_t *)delay_params->rsp_ptr) =
- DIAGPKT_NEXT_DELAYED_RSP_ID(delayed_rsp_id);
- *(delay_params->num_bytes_ptr) = sizeof(delayed_rsp_id);
- success = 0;
+ success = 0;
}
} else if (iocmd == DIAG_IOCTL_LSM_DEINIT) {
for (i = 0; i < driver->num_clients; i++)
@@ -683,7 +766,7 @@ static int diagchar_write(struct file *f
struct diag_send_desc_type send = { NULL, NULL, DIAG_STATE_START, 0 };
struct diag_hdlc_dest_type enc = { NULL, NULL, 0 };
void *buf_copy = NULL;
- int payload_size;
+ unsigned int payload_size;
#ifdef CONFIG_DIAG_OVER_USB
if (((driver->logging_mode == USB_MODE) && (!driver->usb_connected)) ||
(driver->logging_mode == NO_LOGGING_MODE)) {
@@ -694,21 +777,24 @@ static int diagchar_write(struct file *f
/* Get the packet type F3/log/event/Pkt response */
err = copy_from_user((&pkt_type), buf, 4);
/* First 4 bytes indicate the type of payload - ignore these */
+ if (count < 4) {
+ pr_alert("diag: Client sending short data\n");
+ return -EBADMSG;
+ }
+
payload_size = count - 4;
+ if (payload_size > USER_SPACE_DATA) {
+ pr_err("diag: Dropping packet, packet payload size crosses 8KB limit. Current payload size %d\n",
+ payload_size);
+ driver->dropped_count++;
+ return -EBADMSG;
+ }
+
if (pkt_type == USER_SPACE_LOG_TYPE) {
err = copy_from_user(driver->user_space_data, buf + 4,
payload_size);
-#if 0 /* SAMSUNG Changes for UART DIAG.(problem on QC Release merge) */
- /* Check masks for On-Device logging */
- if (driver->mask_check) {
- if (!mask_request_validate(driver->user_space_data)) {
- pr_alert("diag: mask request Invalid\n");
- return -EFAULT;
- }
- }
-#endif
buf = buf + 4;
/* To removed "0x7E", when received only "0x7E" */
file:5f577750d47f0be62c5154905541a22d7d0ef207 -> file:56dc1753fb0ff413554ca0647ebd095e6e4d7f7f
--- a/drivers/char/diag/diagfwd.c
+++ b/drivers/char/diag/diagfwd.c
@@ -153,6 +153,39 @@ int chk_apps_master(void)
return 0;
}
+/*
+ * This function should be called if you feel that the logging process may
+ * need to be woken up. For instance, if the logging mode is MEMORY_DEVICE MODE
+ * and while trying to read data from a SMD data channel there are no buffers
+ * available to read the data into, then this function should be called to
+ * determine if the logging process needs to be woken up.
+ */
+void chk_logging_wakeup(void)
+{
+ int i;
+
+ /* Find the index of the logging process */
+ for (i = 0; i < driver->num_clients; i++)
+ if (driver->client_map[i].pid ==
+ driver->logging_process_id)
+ break;
+
+ if (i < driver->num_clients) {
+ /* At very high logging rates a race condition can
+ * occur where the buffers containing the data from
+ * an smd channel are all in use, but the data_ready
+ * flag is cleared. In this case, the buffers never
+ * have their data read/logged. Detect and remedy this
+ * situation.
+ */
+ if ((driver->data_ready[i] & USER_SPACE_LOG_TYPE) == 0) {
+ driver->data_ready[i] |= USER_SPACE_LOG_TYPE;
+ pr_debug("diag: Force wakeup of logging process\n");
+ wake_up_interruptible(&driver->wait_q);
+ }
+ }
+}
+
void __diag_smd_send_req(void)
{
void *buf = NULL;
@@ -196,6 +229,9 @@ void __diag_smd_send_req(void)
write_ptr_modem);
}
}
+ } else if (driver->ch && !buf &&
+ (driver->logging_mode == MEMORY_DEVICE_MODE)) {
+ chk_logging_wakeup();
}
}
@@ -340,6 +376,9 @@ void __diag_smd_wcnss_send_req(void)
write_ptr_wcnss);
}
}
+ } else if (driver->ch_wcnss && !buf &&
+ (driver->logging_mode == MEMORY_DEVICE_MODE)) {
+ chk_logging_wakeup();
}
}
@@ -386,6 +425,9 @@ void __diag_smd_qdsp_send_req(void)
write_ptr_qdsp);
}
}
+ } else if (driver->chqdsp && !buf &&
+ (driver->logging_mode == MEMORY_DEVICE_MODE)) {
+ chk_logging_wakeup();
}
}
@@ -800,9 +842,6 @@ void diag_send_msg_mask_update(smd_chann
int first, last, size = -ENOMEM, retry_count = 0, timer;
int header_size = sizeof(struct diag_ctrl_msg_mask);
uint8_t *ptr = driver->msg_masks;
- unsigned long flags = 0;
- int mask_pkt_size, kk;
- void *temp_buf;
mutex_lock(&driver->diag_cntl_mutex);
while (*(uint32_t *)(ptr + 4)) {
file:a6cad181945b3309ada4ab44fce5aaff26994c8a -> file:95fdbe48b1c12faa5fb143c2d9b5c49ca82cbd9a
--- a/drivers/felica/felica.c
+++ b/drivers/felica/felica.c
@@ -20,6 +20,11 @@
#include <linux/termios.h>
#include <linux/serial_core.h>
#include <linux/uaccess.h>
+#define F_WAKE_LOCK
+#ifdef F_WAKE_LOCK
+#include <linux/wakelock.h>
+#endif
+#include <linux/types.h>
#include <mach/scm.h>
/******************************************************************************
* log
@@ -36,6 +41,11 @@
* global variable
******************************************************************************/
+#ifdef F_WAKE_LOCK
+struct wake_lock felica_wake_1;
+struct wake_lock felica_wake_2;
+#endif
+
static struct class *felica_class;
/* storages for communicate to netlink */
@@ -96,6 +106,10 @@ static struct i2c_msg gwrite_msgs[] = {
.buf = NULL,
},
};
+#ifdef F_WAKE_LOCK
+static int tmout_1 = 3*1000;
+#endif
+
/******************************************************************************
* /dev/felica
@@ -191,6 +205,7 @@ static void felica_uart_exit(void)
static int felica_uart_open(struct inode *inode, struct file *file)
{
uid_t uid;
+ int ret;
FELICA_LOG_DEBUG("[MFDD] %s START", __func__);
uid = __task_cred(current)->uid;
@@ -212,13 +227,25 @@ static int felica_uart_open(struct inode
memset(gfa_send_str, 0, FELICA_NL_MSG_SIZE);
memset(gfa_rcv_str, 0, FELICA_NL_MSG_SIZE);
gfa_send_str[0] = FELICA_NL_REQ_OPEN;
- felica_nl_send_msg(1);
- felica_nl_wait_ret_msg();
- if (gfa_rcv_str[1] == FELICA_NL_EFAILED) {
- FELICA_LOG_ERR("[MFDD] %s Open Fail", __func__);
+
+ ret = felica_nl_send_msg(1);
+ if (ret == 0) {
+ felica_nl_wait_ret_msg();
+ if (gfa_rcv_str[1] == FELICA_NL_EFAILED) {
+ FELICA_LOG_ERR("[MFDD] %s Open Fail", __func__);
+ up(&dev_sem->felica_sem);
+ return -EFAULT;
+ }
+ } else {
+ FELICA_LOG_ERR("[MFDD] %s felica_nl_send_msg Fail", \
+ __func__);
up(&dev_sem->felica_sem);
return -EFAULT;
}
+#ifdef F_WAKE_LOCK
+ wake_lock(&felica_wake_2);
+ FELICA_LOG_DEBUG("[MFDD] %s Wake Lock(2)", __func__);
+#endif
}
gfa_open_cnt++;
@@ -233,6 +260,7 @@ static int felica_uart_open(struct inode
*/
static int felica_uart_close(struct inode *inode, struct file *file)
{
+ int ret;
FELICA_LOG_DEBUG("[MFDD] %s START", __func__);
if (down_interruptible(&dev_sem->felica_sem)) {
@@ -246,14 +274,27 @@ static int felica_uart_close(struct inod
memset(gfa_send_str, 0, FELICA_NL_MSG_SIZE);
memset(gfa_rcv_str, 0, FELICA_NL_MSG_SIZE);
gfa_send_str[0] = FELICA_NL_REQ_CLOSE;
- felica_nl_send_msg(1);
- felica_nl_wait_ret_msg();
- if (gfa_rcv_str[1] == FELICA_NL_EFAILED) {
- FELICA_LOG_ERR("[MFDD] %s Close Fail", __func__);
+ ret = felica_nl_send_msg(1);
+ if (ret == 0) {
+ felica_nl_wait_ret_msg();
+ if (gfa_rcv_str[1] == FELICA_NL_EFAILED) {
+ FELICA_LOG_ERR("[MFDD] %s Close Fail",\
+ __func__);
+ gfa_open_cnt++;
+ up(&dev_sem->felica_sem);
+ return -EFAULT;
+ }
+ } else {
+ FELICA_LOG_ERR("[MFDD] %s felica_nl_send_msg Fail", \
+ __func__);
gfa_open_cnt++;
up(&dev_sem->felica_sem);
return -EFAULT;
}
+#ifdef F_WAKE_LOCK
+ wake_unlock(&felica_wake_2);
+ FELICA_LOG_DEBUG("[MFDD] %s Wake UnLock(2)", __func__);
+#endif
}
up(&dev_sem->felica_sem);
@@ -269,7 +310,9 @@ static ssize_t felica_uart_read(struct f
size_t len, loff_t *ppos)
{
int ret = 0;
+ int nlret;
size_t wk_len = 0;
+
FELICA_LOG_DEBUG("[MFDD] %s START", __func__);
if (down_interruptible(&dev_sem->felica_sem)) {
@@ -290,9 +333,10 @@ static ssize_t felica_uart_read(struct f
gfa_send_str[0] = FELICA_NL_REQ_READ;
gfa_send_str[1] = (char)(wk_len >> 8);
gfa_send_str[2] = (char)wk_len;
- felica_nl_send_msg(3);
+ nlret = felica_nl_send_msg(3);
wk_len = 0;
+ if (nlret == 0) {
felica_nl_wait_ret_msg();
if (gfa_rcv_str[1] == FELICA_NL_SUCCESS) {
wk_len =
@@ -302,10 +346,15 @@ static ssize_t felica_uart_read(struct f
FELICA_LOG_ERR
("[MFDD] %s ERROR(copy_from_user), ret=[%d]",
__func__, ret);
+ up(&dev_sem->felica_sem);
+ return -EFAULT;
+ }
+ *ppos = *ppos + wk_len;
+ } else {
+ FELICA_LOG_DEBUG(" %s FAIL", __func__);
up(&dev_sem->felica_sem);
return -EFAULT;
}
- *ppos = *ppos + wk_len;
} else {
FELICA_LOG_DEBUG(" %s FAIL", __func__);
up(&dev_sem->felica_sem);
@@ -325,7 +374,9 @@ static ssize_t felica_uart_write(struct
size_t len, loff_t *ppos)
{
int ret = 0;
+ int nlret;
size_t wk_len = 0;
+
FELICA_LOG_DEBUG("[MFDD] %s START", __func__);
if (down_interruptible(&dev_sem->felica_sem)) {
@@ -353,17 +404,21 @@ static ssize_t felica_uart_write(struct
up(&dev_sem->felica_sem);
return -EFAULT;
}
- felica_nl_send_msg(3 + len);
-
+ nlret = felica_nl_send_msg(3 + len);
+ if (nlret == 0) {
wk_len = 0;
felica_nl_wait_ret_msg();
wk_len = (((int)gfa_rcv_str[2] << 8) & 0xFF00) | (int)gfa_rcv_str[3];
if (gfa_rcv_str[1] == FELICA_NL_EFAILED) {
FELICA_LOG_ERR("[MFDD] %s Write Fail", __func__);
up(&dev_sem->felica_sem);
+ return -EINVAL;
+ }
+ } else {
+ FELICA_LOG_ERR("[MFDD] %s felica_nl_send_msg Fail", __func__);
+ up(&dev_sem->felica_sem);
return -EINVAL;
}
-
up(&dev_sem->felica_sem);
FELICA_LOG_DEBUG("[MFDD] %s END", __func__);
@@ -387,6 +442,7 @@ static long felica_uart_ioctl(struct fil
unsigned long arg)
{
unsigned int ret_str = 0;
+ int ret;
FELICA_LOG_DEBUG("[MFDD] %s START", __func__);
if (down_interruptible(&dev_sem->felica_sem)) {
@@ -399,20 +455,24 @@ static long felica_uart_ioctl(struct fil
memset(gfa_rcv_str, 0, FELICA_NL_MSG_SIZE);
gfa_send_str[0] = FELICA_NL_REQ_AVAIABLE;
- felica_nl_send_msg(1);
+ ret = felica_nl_send_msg(1);
+ if (ret == 0) {
felica_nl_wait_ret_msg();
if (gfa_rcv_str[1] == FELICA_NL_SUCCESS) {
/* create response data */
ret_str =
- (((unsigned int)gfa_rcv_str[2] << 8) & 0xFF00) | (unsigned
- int)
- gfa_rcv_str[3];
+ (((unsigned int)gfa_rcv_str[2] << 8) & 0xFF00) | (unsigned int)gfa_rcv_str[3];
FELICA_LOG_DEBUG("Available Success data size [%d]", ret_str);
} else {
FELICA_LOG_ERR("[MFDD] %s Available Fail", __func__);
up(&dev_sem->felica_sem);
return -EINVAL;
+ }
+ } else {
+ FELICA_LOG_ERR("[MFDD] %s felica_nl_send_msg Fail", __func__);
+ up(&dev_sem->felica_sem);
+ return -EINVAL;
}
up(&dev_sem->felica_sem);
@@ -459,7 +519,7 @@ static void felica_nl_exit(void)
/*
* send message to FeliCa-Serial-Connector
*/
-static void felica_nl_send_msg(int len)
+static int felica_nl_send_msg(int len)
{
struct nlmsghdr *nlh;
struct sk_buff *skb_out;
@@ -469,12 +529,12 @@ static void felica_nl_send_msg(int len)
if (!gfanl_sk) {
FELICA_LOG_ERR("[MFDD]Error Not creating socket. %s\n",
__func__);
- return;
+ return 1;
}
if (gfa_pid == 0) {
FELICA_LOG_ERR("[MFDD]Error Not Rcv Connect Msg %s\n",
__func__);
- return;
+ return 1;
}
msg_size = len;
@@ -482,7 +542,7 @@ static void felica_nl_send_msg(int len)
if (!skb_out) {
FELICA_LOG_ERR("Failed to allocate new skb_out %s\n", __func__);
- return;
+ return 1;
}
nlh = nlmsg_put(skb_out, 0, 0, NLMSG_DONE, msg_size, 0);
NETLINK_CB(skb_out).dst_group = 0;
@@ -492,6 +552,7 @@ static void felica_nl_send_msg(int len)
nlmsg_unicast(gfanl_sk, skb_out, gfa_pid);
FELICA_LOG_DEBUG("[MFDD] %s END", __func__);
+ return 0;
}
/*
@@ -1008,6 +1069,10 @@ static ssize_t felica_cen_read(struct fi
gread_msgs[1].buf = &read_buff;
FELICA_LOG_DEBUG("[MFDD] %s START", __func__);
+ if (felica_i2c_client == NULL) {
+ FELICA_LOG_DEBUG("felica_i2c_client is NULL");
+ return -EIO;
+ }
ret = i2c_transfer(felica_i2c_client->adapter, &gread_msgs[0], 1);
if (ret < 0) {
@@ -1049,6 +1114,11 @@ static ssize_t felica_cen_write(struct f
unsigned char write_buff[2];
FELICA_LOG_DEBUG("[MFDD] %s START", __func__);
+ if (felica_i2c_client == NULL) {
+ FELICA_LOG_DEBUG("felica_i2c_client is NULL");
+ return -EIO;
+ }
+
gwrite_msgs[0].buf = &write_buff[0];
gwrite_msgs[0].addr = gi2c_address;
write_buff[0] = gi2c_lockaddress;
@@ -1072,7 +1142,6 @@ static ssize_t felica_cen_write(struct f
__func__, cen);
return -EINVAL;
}
-
ret = i2c_transfer(felica_i2c_client->adapter, gwrite_msgs, 1);
if (ret < 0) {
FELICA_LOG_ERR("[MFDD] %s ERROR(i2c_transfer), ret=[%d]",
@@ -1446,6 +1515,11 @@ static void felica_int_irq_work(struct w
enable_irq(gpio_to_irq(GPIO_PINID_FELICA_INT));
pgint_irq->irq_done = 1;
+
+#ifdef F_WAKE_LOCK
+ wake_lock_timeout(&felica_wake_1, msecs_to_jiffies(tmout_1));
+ FELICA_LOG_DEBUG("[MFDD] %s Wake Lock(1)[%d]", __func__, tmout_1);
+#endif
wake_up_interruptible(&pgint_irq->read_wait);
FELICA_LOG_DEBUG("[MFDD] %s END", __func__);
@@ -1726,7 +1800,7 @@ static int felica_uid_open(struct inode
cmdline[leng] = '\0';
if (strncmp(cmdline, gdiag_name, leng) != 0) {
- FELICA_LOG_DEBUG("[MFDD] %s ERROR, %s", __func__, cmdline);
+ FELICA_LOG_DEBUG("[MFDD] %s ERROR, %s gdiag %s", __func__, cmdline,gdiag_name);
return -EACCES;
}
@@ -1887,6 +1961,11 @@ static ssize_t felica_ant_read(struct fi
gread_msgs[1].buf = &read_buff;
FELICA_LOG_DEBUG("[MFDD] %s START", __func__);
+ if (felica_i2c_client == NULL) {
+ FELICA_LOG_DEBUG("[MFDD] %s felica_i2c_client is NULL", \
+ __func__);
+ return -EIO;
+ }
ret = i2c_transfer(felica_i2c_client->adapter, &gread_msgs[0], 1);
if (ret < 0) {
@@ -1925,10 +2004,17 @@ static ssize_t felica_ant_write(struct f
unsigned char write_buff[2];
FELICA_LOG_DEBUG("[MFDD] %s START", __func__);
+ if (felica_i2c_client == NULL) {
+ FELICA_LOG_DEBUG("[MFDD] %s felica_i2c_client is NULL", \
+ __func__);
+ return -EIO;
+ }
+
gwrite_msgs[0].buf = &write_buff[0];
gwrite_msgs[0].addr = gi2c_address;
write_buff[0] = gi2c_antaddress;
+
ret = copy_from_user(&ant, data, FELICA_ANT_DATA_LEN);
if (ret != 0) {
FELICA_LOG_ERR("[MFDD] %s ERROR(copy_from_user), ret=[%d]",
@@ -2022,6 +2108,10 @@ static int __init felica_init(void)
FELICA_LOG_ERR("[MFDD] %s ERROR(class_create)", __func__);
return PTR_ERR(felica_class);
}
+#ifdef F_WAKE_LOCK
+ wake_lock_init(&felica_wake_1, WAKE_LOCK_SUSPEND, "felica-int-1");
+ wake_lock_init(&felica_wake_2, WAKE_LOCK_SUSPEND, "felica-int-2");
+#endif
felica_initialize_pin();
felica_register_device();
felica_nl_init();
@@ -2040,6 +2130,10 @@ static void __exit felica_exit(void)
{
FELICA_LOG_DEBUG("[MFDD] %s START", __func__);
+#ifdef F_WAKE_LOCK
+ wake_lock_destroy(&felica_wake_1);
+ wake_lock_destroy(&felica_wake_2);
+#endif
felica_i2c_exit();
felica_nl_exit();
felica_deregister_device();
file:63a8c57e44c11c9edc5ec5198c9cd9e0a223c3bb -> file:1dd44ac80ae926fe55a5ba4641139de5b5539b99
--- a/drivers/felica/felica.h
+++ b/drivers/felica/felica.h
@@ -91,7 +91,7 @@ static void __exit felica_exit(void);
#define FELICA_NL_REQ_SYNC 0x06
#define FELICA_NL_RESPONCE 0xFE
#define FELICA_NL_CONNECT_MSG 0xFF
-#define FELICA_NL_MSG_DATA_SIZE 4096
+#define FELICA_NL_MSG_DATA_SIZE 4096*4
#define FELICA_NL_MSG_SIZE (FELICA_NL_MSG_DATA_SIZE+4)
#define MSG_READ1_FLAGS_OFFSET 1
@@ -134,7 +134,7 @@ static long felica_uart_ioctl(struct fil
unsigned long arg);
static void felica_nl_init(void);
static void felica_nl_exit(void);
-static void felica_nl_send_msg(int len);
+static int felica_nl_send_msg(int len);
static void felica_nl_recv_msg(struct sk_buff *skb);
static void felica_nl_wait_ret_msg(void);
static void felica_set_felica_info(void);
file:fe05c24365f5371b9caf114579657fae390e0746 -> file:7ded615890c8d94a06ac4b30f0b772c9eacb2c19
--- a/drivers/gpu/ion/ion.c
+++ b/drivers/gpu/ion/ion.c
@@ -925,7 +925,6 @@ static int check_vaddr_bounds(unsigned l
if (end < start)
goto out;
- down_read(&mm->mmap_sem);
vma = find_vma(mm, start);
if (vma && vma->vm_start < end) {
if (start < vma->vm_start)
@@ -936,7 +935,6 @@ static int check_vaddr_bounds(unsigned l
}
out_up:
- up_read(&mm->mmap_sem);
out:
return ret;
}
@@ -1543,7 +1541,7 @@ static long ion_ioctl(struct file *filp,
unsigned long start, end;
struct ion_handle *handle = NULL;
int ret;
-
+ struct mm_struct *mm = current->active_mm;
if (copy_from_user(&data, (void __user *)arg,
sizeof(struct ion_flush_data)))
return -EFAULT;
@@ -1551,12 +1549,6 @@ static long ion_ioctl(struct file *filp,
start = (unsigned long) data.vaddr;
end = (unsigned long) data.vaddr + data.length;
- if (check_vaddr_bounds(start, end)) {
- pr_err("%s: virtual address %p is out of bounds\n",
- __func__, data.vaddr);
- return -EINVAL;
- }
-
if (!data.handle) {
handle = ion_import_fd(client, data.fd);
if (IS_ERR_OR_NULL(handle)) {
@@ -1565,12 +1557,21 @@ static long ion_ioctl(struct file *filp,
return -EINVAL;
}
}
+ down_read(&mm->mmap_sem);
+ if (check_vaddr_bounds(start, end)) {
+ up_read(&mm->mmap_sem);
+ pr_err("%s: virtual address %p is out of bounds\n",
+ __func__, data.vaddr);
+ if (!data.handle)
+ ion_free(client, handle);
+ return -EINVAL;
+ }
ret = ion_do_cache_op(client,
data.handle ? data.handle : handle,
data.vaddr, data.offset, data.length,
cmd);
-
+ up_read(&mm->mmap_sem);
if (!data.handle)
ion_free(client, handle);
file:57c0693c65ea83ab5d8642f08ee7be5d2f36e78e -> file:164f9d9fb2ced1fa8987173e60831ec727408f44
--- a/drivers/gpu/ion/ion_cp_heap.c
+++ b/drivers/gpu/ion/ion_cp_heap.c
@@ -93,6 +93,7 @@ struct ion_cp_heap {
int iommu_map_all;
int iommu_2x_map_domain;
unsigned int has_outer_cache;
+ atomic_t protect_cnt;
};
enum {
@@ -127,7 +128,7 @@ static int ion_cp_protect(struct ion_hea
container_of(heap, struct ion_cp_heap, heap);
int ret_value = 0;
- if (cp_heap->heap_protected == HEAP_NOT_PROTECTED) {
+ if (atomic_inc_return(&cp_heap->protect_cnt) == 1) {
/* Make sure we are in C state when the heap is protected. */
if (cp_heap->reusable && !cp_heap->allocated_bytes) {
ret_value = fmem_set_state(FMEM_C_STATE);
@@ -146,6 +147,7 @@ static int ion_cp_protect(struct ion_hea
pr_err("%s: unable to transition heap to T-state\n",
__func__);
}
+ atomic_dec(&cp_heap->protect_cnt);
} else {
cp_heap->heap_protected = HEAP_PROTECTED;
pr_debug("Protected heap %s @ 0x%lx\n",
@@ -153,6 +155,9 @@ static int ion_cp_protect(struct ion_hea
}
}
out:
+ pr_debug("%s: protect count is %d\n", __func__,
+ atomic_read(&cp_heap->protect_cnt));
+ BUG_ON(atomic_read(&cp_heap->protect_cnt) < 0);
return ret_value;
}
@@ -166,7 +171,7 @@ static void ion_cp_unprotect(struct ion_
struct ion_cp_heap *cp_heap =
container_of(heap, struct ion_cp_heap, heap);
- if (cp_heap->heap_protected == HEAP_PROTECTED) {
+ if (atomic_dec_and_test(&cp_heap->protect_cnt)) {
int error_code = ion_cp_unprotect_mem(
cp_heap->secure_base, cp_heap->secure_size,
cp_heap->permission_type);
@@ -185,6 +190,9 @@ static void ion_cp_unprotect(struct ion_
}
}
}
+ pr_debug("%s: protect count is %d\n", __func__,
+ atomic_read(&cp_heap->protect_cnt));
+ BUG_ON(atomic_read(&cp_heap->protect_cnt) < 0);
}
ion_phys_addr_t ion_cp_allocate(struct ion_heap *heap,
@@ -886,6 +894,7 @@ struct ion_heap *ion_cp_heap_create(stru
cp_heap->secure_base = cp_heap->base;
cp_heap->secure_size = heap_data->size;
cp_heap->has_outer_cache = heap_data->has_outer_cache;
+ atomic_set(&cp_heap->protect_cnt, 0);
if (heap_data->extra_data) {
struct ion_cp_heap_pdata *extra_data =
heap_data->extra_data;
file:7d2a1f52b3a6234e6670bf4362a8925c6f6866b6 -> file:75db2f5cda0afe003ce6d9221cf9ac04970fb7e3
--- a/drivers/gpu/msm/kgsl.c
+++ b/drivers/gpu/msm/kgsl.c
@@ -756,6 +756,9 @@ kgsl_sharedmem_find_region(struct kgsl_p
{
struct rb_node *node = private->mem_rb.rb_node;
+ if (!kgsl_mmu_gpuaddr_in_range(gpuaddr))
+ return NULL;
+
while (node != NULL) {
struct kgsl_mem_entry *entry;
@@ -1899,7 +1902,7 @@ static const struct {
static long kgsl_ioctl(struct file *filep, unsigned int cmd, unsigned long arg)
{
struct kgsl_device_private *dev_priv = filep->private_data;
- unsigned int nr = _IOC_NR(cmd);
+ unsigned int nr;
kgsl_ioctl_func_t func;
int lock, ret;
char ustack[64];
@@ -1915,6 +1918,8 @@ static long kgsl_ioctl(struct file *file
else if (cmd == IOCTL_KGSL_CMDSTREAM_READTIMESTAMP_OLD)
cmd = IOCTL_KGSL_CMDSTREAM_READTIMESTAMP;
+ nr = _IOC_NR(cmd);
+
if (cmd & (IOC_IN | IOC_OUT)) {
if (_IOC_SIZE(cmd) < sizeof(ustack))
uptr = ustack;
@@ -1939,7 +1944,20 @@ static long kgsl_ioctl(struct file *file
}
if (nr < ARRAY_SIZE(kgsl_ioctl_funcs) &&
- kgsl_ioctl_funcs[nr].func != NULL) {
+ kgsl_ioctl_funcs[nr].func != NULL) {
+
+ /*
+ * Make sure that nobody tried to send us a malformed ioctl code
+ * with a valid NR but bogus flags
+ */
+
+ if (kgsl_ioctl_funcs[nr].cmd != cmd) {
+ KGSL_DRV_ERR(dev_priv->device,
+ "Malformed ioctl code %08x\n", cmd);
+ ret = -ENOIOCTLCMD;
+ goto done;
+ }
+
func = kgsl_ioctl_funcs[nr].func;
lock = kgsl_ioctl_funcs[nr].lock;
} else {
file:870f77180013c04b777fa84c9e1e50053ec70c4b -> file:c215bdc28563364cb19e6ec9467343c4f3e57afe
--- a/drivers/gpu/msm/kgsl_mmu.h
+++ b/drivers/gpu/msm/kgsl_mmu.h
@@ -186,4 +186,12 @@ void kgsl_mmu_set_mmutype(char *mmutype)
unsigned int kgsl_mmu_get_current_ptbase(struct kgsl_device *device);
enum kgsl_mmutype kgsl_mmu_get_mmutype(void);
unsigned int kgsl_mmu_get_ptsize(void);
+
+static inline int kgsl_mmu_gpuaddr_in_range(unsigned int gpuaddr)
+{
+ return ((gpuaddr >= KGSL_PAGETABLE_BASE) &&
+ (gpuaddr <
+ (KGSL_PAGETABLE_BASE + CONFIG_MSM_KGSL_PAGE_TABLE_SIZE)));
+}
+
#endif /* __KGSL_MMU_H */
file:99533f75c154f240f173a43185bb906ffc3362b8 -> file:585ec23a8417913187c9f2e056a76f28e4fe5e04
--- a/drivers/input/touchscreen/d2_fw.h
+++ b/drivers/input/touchscreen/d2_fw.h
@@ -13,2652 +13,1989 @@
const size_t MELFAS_binary_nLength = 0x7C00;
const u8 MELFAS_binary[] = {
-0x00, 0x20, 0x00, 0x20, 0x79, 0x02, 0x00, 0x00, 0x39, 0x02, 0x00, 0x00,
-0x3D, 0x02, 0x00, 0x00, 0x41, 0x02, 0x00, 0x00, 0x45, 0x02, 0x00, 0x00,
-0x49, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4D, 0x02, 0x00, 0x00,
-0x51, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x55, 0x02, 0x00, 0x00,
-0x59, 0x02, 0x00, 0x00, 0x39, 0x01, 0x00, 0x00, 0x61, 0x01, 0x00, 0x00,
-0x25, 0x01, 0x00, 0x00, 0x21, 0x02, 0x00, 0x00, 0x35, 0x02, 0x00, 0x00,
-0x71, 0x02, 0x00, 0x00, 0x75, 0x02, 0x00, 0x00, 0x75, 0x02, 0x00, 0x00,
-0x75, 0x02, 0x00, 0x00, 0x75, 0x02, 0x00, 0x00, 0x75, 0x02, 0x00, 0x00,
-0x75, 0x02, 0x00, 0x00, 0x75, 0x02, 0x00, 0x00, 0x75, 0x02, 0x00, 0x00,
-0x75, 0x02, 0x00, 0x00, 0x75, 0x02, 0x00, 0x00, 0x75, 0x02, 0x00, 0x00,
-0x75, 0x02, 0x00, 0x00, 0x75, 0x02, 0x00, 0x00, 0x75, 0x02, 0x00, 0x00,
-0x75, 0x02, 0x00, 0x00, 0x75, 0x02, 0x00, 0x00, 0x75, 0x02, 0x00, 0x00,
-0x75, 0x02, 0x00, 0x00, 0x75, 0x02, 0x00, 0x00, 0x75, 0x02, 0x00, 0x00,
-0x75, 0x02, 0x00, 0x00, 0x75, 0x02, 0x00, 0x00, 0x75, 0x02, 0x00, 0x00,
-0x75, 0x02, 0x00, 0x00, 0x75, 0x02, 0x00, 0x00, 0x75, 0x02, 0x00, 0x00,
-0x30, 0xB5, 0x11, 0x4B, 0x11, 0x4A, 0x1B, 0x88, 0x12, 0x78, 0xD3, 0x18,
-0xDB, 0xB2, 0xE1, 0x2B, 0x02, 0xD0, 0xE5, 0x2B, 0x17, 0xD1, 0x09, 0xE0,
-0x0D, 0x49, 0x0E, 0x4A, 0x04, 0x23, 0x01, 0x3B, 0xDB, 0xB2, 0xC8, 0x5C,
-0x98, 0x54, 0x00, 0x2B, 0xF9, 0xD1, 0x0C, 0xE0, 0x0A, 0x4C, 0x09, 0x48,
-0x0A, 0x49, 0x0B, 0x4A, 0x04, 0x23, 0x01, 0x3B, 0xDB, 0xB2, 0xE5, 0x5C,
-0x1D, 0x54, 0xCD, 0x5C, 0x9D, 0x54, 0x00, 0x2B, 0xF7, 0xD1, 0x30, 0xBD,
-0x28, 0x00, 0x00, 0x20, 0x2A, 0x00, 0x00, 0x20, 0x2D, 0x00, 0x00, 0x20,
-0x0C, 0x00, 0x00, 0x50, 0x35, 0x00, 0x00, 0x20, 0x31, 0x00, 0x00, 0x20,
-0x10, 0x00, 0x00, 0x50, 0x03, 0x4A, 0x00, 0x23, 0x13, 0x70, 0x80, 0x22,
-0xD2, 0x05, 0x13, 0x70, 0x70, 0x47, 0xC0, 0x46, 0x00, 0x00, 0x00, 0x20,
-0x06, 0x4B, 0x00, 0x22, 0x5A, 0x70, 0x80, 0x23, 0xDB, 0x05, 0x59, 0x69,
-0x04, 0x4A, 0x0A, 0x40, 0x5A, 0x61, 0x59, 0x69, 0x03, 0x4A, 0x0A, 0x40,
-0x5A, 0x61, 0x70, 0x47, 0x00, 0x00, 0x00, 0x20, 0xFF, 0xFF, 0xFF, 0xFE,
-0xFF, 0xFF, 0xFF, 0xEF, 0x70, 0xB5, 0xA0, 0x23, 0xDB, 0x05, 0x1C, 0x7A,
-0x24, 0x4D, 0x0F, 0x22, 0x14, 0x40, 0x2A, 0x78, 0x23, 0x4E, 0x00, 0x2A,
-0x06, 0xD0, 0x23, 0x4B, 0x1B, 0x68, 0x98, 0x47, 0x00, 0x23, 0x2B, 0x70,
-0x34, 0x70, 0x3A, 0xE0, 0x9B, 0x7A, 0x32, 0x78, 0xE1, 0x07, 0x02, 0xD5,
-0x1E, 0x4A, 0x13, 0x80, 0x07, 0xE0, 0x08, 0x21, 0x0C, 0x42, 0x0A, 0xD0,
-0x1C, 0x4B, 0x1A, 0x78, 0x52, 0x18, 0xD2, 0xB2, 0x1A, 0x70, 0xFF, 0xF7,
-0x8D, 0xFF, 0x1A, 0x4B, 0x1B, 0x68, 0x98, 0x47, 0x19, 0xE0, 0xA1, 0x07,
-0x0D, 0xD5, 0x08, 0x2A, 0x01, 0xD0, 0x01, 0x2A, 0x01, 0xD1, 0x16, 0x4B,
-0x02, 0xE0, 0x12, 0x4A, 0x13, 0x80, 0x15, 0x4B, 0x1B, 0x68, 0x98, 0x47,
-0x00, 0x22, 0x10, 0x4B, 0x08, 0xE0, 0x63, 0x07, 0x07, 0xD5, 0x11, 0x4B,
-0x1B, 0x68, 0x98, 0x47, 0x0C, 0x4B, 0x1A, 0x78, 0x08, 0x32, 0xD2, 0xB2,
-0x1A, 0x70, 0x07, 0x4B, 0x01, 0x22, 0x1C, 0x70, 0xA0, 0x23, 0xDB, 0x05,
-0x1A, 0x72, 0x0B, 0x49, 0x10, 0x22, 0x1A, 0x72, 0x00, 0x22, 0x0A, 0x70,
-0x1A, 0x72, 0x70, 0xBD, 0x2C, 0x00, 0x00, 0x20, 0x2B, 0x00, 0x00, 0x20,
-0x24, 0x00, 0x00, 0x20, 0x28, 0x00, 0x00, 0x20, 0x2A, 0x00, 0x00, 0x20,
-0x1C, 0x00, 0x00, 0x20, 0x20, 0x00, 0x00, 0x20, 0x18, 0x00, 0x00, 0x20,
-0x0C, 0x00, 0x00, 0x20, 0x03, 0x4A, 0x00, 0x23, 0x93, 0x70, 0x80, 0x22,
-0xD2, 0x05, 0x53, 0x70, 0x70, 0x47, 0xC0, 0x46, 0x00, 0x00, 0x00, 0x20,
-0x70, 0x47, 0xC0, 0x46, 0x00, 0xB5, 0xFE, 0xE7, 0x00, 0xB5, 0xFE, 0xE7,
-0x00, 0xB5, 0xFE, 0xE7, 0x00, 0xB5, 0xFE, 0xE7, 0x00, 0xB5, 0xFE, 0xE7,
-0x00, 0xB5, 0xFE, 0xE7, 0x00, 0xB5, 0xFE, 0xE7, 0x00, 0xB5, 0xFE, 0xE7,
-0x00, 0xB5, 0xFE, 0xE7, 0x00, 0xB5, 0xFE, 0xE7, 0x00, 0xB5, 0xFE, 0xE7,
-0x00, 0xB5, 0xFE, 0xE7, 0x00, 0xB5, 0xFE, 0xE7, 0x00, 0xB5, 0xFE, 0xE7,
-0x00, 0xB5, 0xFE, 0xE7, 0x00, 0xB5, 0xFE, 0xE7, 0x38, 0xB5, 0x80, 0x23,
-0xDB, 0x05, 0xFB, 0x21, 0x5A, 0x68, 0x59, 0x60, 0x99, 0x68, 0x08, 0x21,
-0x99, 0x60, 0x00, 0x22, 0xD9, 0x68, 0xDA, 0x60, 0x19, 0x6C, 0x80, 0x21,
-0xC9, 0x01, 0x19, 0x64, 0x19, 0x69, 0x44, 0x49, 0x19, 0x61, 0x44, 0x4B,
-0x44, 0x49, 0x00, 0xE0, 0x04, 0xC3, 0x8B, 0x42, 0xFC, 0xD3, 0x43, 0x4B,
-0x43, 0x4A, 0x9B, 0x0A, 0xDB, 0xB2, 0x13, 0x70, 0x42, 0x4B, 0x43, 0x49,
-0x1B, 0x68, 0x9B, 0x0A, 0xDB, 0xB2, 0x53, 0x70, 0x41, 0x4B, 0x1B, 0x68,
-0x9B, 0x0A, 0xDB, 0xB2, 0x93, 0x70, 0x40, 0x4B, 0x1B, 0x68, 0x9B, 0x0A,
-0xDB, 0xB2, 0xD3, 0x70, 0x00, 0x23, 0x0B, 0x70, 0x03, 0x23, 0x08, 0xE0,
-0x58, 0x1C, 0x15, 0x5C, 0xD4, 0x5C, 0xA5, 0x42, 0x07, 0xD9, 0xD4, 0x5C,
-0x01, 0x34, 0xE4, 0xB2, 0x0C, 0x54, 0x01, 0x3B, 0xDB, 0xB2, 0xFF, 0x2B,
-0xF2, 0xD1, 0x30, 0x4A, 0x11, 0x78, 0x35, 0x4A, 0x11, 0x70, 0x11, 0x1C,
-0xFF, 0x2B, 0x03, 0xD1, 0x2D, 0x4B, 0xDB, 0x78, 0x1E, 0x2B, 0x04, 0xD9,
-0xFF, 0x23, 0x4B, 0x70, 0x8B, 0x70, 0xCB, 0x70, 0x0B, 0xE0, 0x2A, 0x4B,
-0x1B, 0x68, 0x1B, 0x78, 0x53, 0x70, 0x2A, 0x4B, 0x1B, 0x68, 0x1B, 0x78,
-0x93, 0x70, 0x29, 0x4B, 0x1B, 0x68, 0x1B, 0x78, 0xD3, 0x70, 0x28, 0x4B,
-0xDA, 0x78, 0xFF, 0x2A, 0x08, 0xD0, 0x9A, 0x78, 0xFF, 0x2A, 0x05, 0xD0,
-0x5B, 0x78, 0xFF, 0x2B, 0x02, 0xD0, 0x00, 0xF0, 0x67, 0xF8, 0x38, 0xBD,
-0x22, 0x4B, 0x23, 0x4A, 0xC0, 0x21, 0x13, 0x60, 0x22, 0x4A, 0x49, 0x00,
-0x13, 0x60, 0x22, 0x4A, 0x22, 0x48, 0x13, 0x60, 0x22, 0x4A, 0x13, 0x60,
-0x22, 0x4B, 0x02, 0x22, 0x5A, 0x50, 0xC0, 0x21, 0x91, 0x40, 0x5C, 0x58,
-0x20, 0x40, 0x58, 0x50, 0x1F, 0x49, 0x04, 0x24, 0x08, 0x69, 0x20, 0x43,
-0x08, 0x61, 0x62, 0xB6, 0x1A, 0x60, 0x80, 0x23, 0xDB, 0x05, 0x1A, 0x6C,
-0x80, 0x22, 0x12, 0x02, 0x1A, 0x64, 0x1A, 0x6C, 0x80, 0x22, 0xD2, 0x01,
-0x1A, 0x64, 0x9A, 0x68, 0x80, 0x22, 0x52, 0x00, 0x9A, 0x60, 0xA0, 0x22,
-0xD2, 0x05, 0x91, 0x68, 0x14, 0x49, 0x91, 0x60, 0x1A, 0x6C, 0x00, 0x22,
-0x1A, 0x64, 0xFE, 0xE7, 0x10, 0x4F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20,
-0x3C, 0x00, 0x00, 0x20, 0xFF, 0x03, 0x00, 0x00, 0x31, 0x00, 0x00, 0x20,
-0x08, 0x04, 0x00, 0x00, 0x35, 0x00, 0x00, 0x20, 0x0C, 0x04, 0x00, 0x00,
-0x10, 0x04, 0x00, 0x00, 0x2D, 0x00, 0x00, 0x20, 0xF9, 0x03, 0x00, 0x00,
-0x24, 0x00, 0x00, 0x20, 0x18, 0x00, 0x00, 0x20, 0x1C, 0x00, 0x00, 0x20,
-0xFF, 0x00, 0xFF, 0xFF, 0x20, 0x00, 0x00, 0x20, 0x00, 0xE1, 0x00, 0xE0,
-0x00, 0xED, 0x00, 0xE0, 0x00, 0x00, 0xC8, 0x42, 0x70, 0x47, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x02, 0x4D, 0x31, 0x48, 0x30, 0x43, 0x4F, 0x34, 0x35,
-0xFF, 0x5B, 0x00, 0x00, 0xFF, 0x73, 0x00, 0x00, 0xFF, 0x7B, 0x00, 0x00,
-0xF7, 0xB5, 0x03, 0xF0, 0xC3, 0xFC, 0x05, 0xF0, 0x33, 0xF8, 0x00, 0x20,
-0x05, 0xF0, 0xF2, 0xFB, 0x4E, 0x4B, 0x33, 0x33, 0x1B, 0x78, 0x5E, 0x42,
-0x73, 0x41, 0x10, 0x26, 0xF6, 0x1A, 0x4C, 0x4B, 0x1E, 0x70, 0x4C, 0x4B,
-0x1A, 0x68, 0x01, 0x3A, 0x53, 0x42, 0x5A, 0x41, 0x4A, 0x4B, 0x1A, 0x70,
-0x4A, 0x4B, 0x1C, 0x78, 0x00, 0x2C, 0x22, 0xD1, 0x49, 0x4A, 0x01, 0x25,
-0x14, 0x70, 0x1D, 0x70, 0x00, 0xF0, 0x52, 0xFA, 0x47, 0x4B, 0x28, 0x1C,
-0xDA, 0x78, 0x9A, 0x70, 0x5C, 0x70, 0x05, 0xF0, 0xD1, 0xFB, 0x03, 0xF0,
-0x7F, 0xFB, 0x01, 0xF0, 0x17, 0xFB, 0x80, 0x23, 0xDB, 0x05, 0x1A, 0x6C,
-0x7F, 0x21, 0x8A, 0x43, 0x1A, 0x64, 0x00, 0xF0, 0xF5, 0xFD, 0x02, 0xF0,
-0x4B, 0xFF, 0x01, 0xF0, 0x0B, 0xFB, 0x01, 0xF0, 0xA3, 0xFA, 0x3C, 0x4B,
-0x02, 0x20, 0x1B, 0x68, 0x98, 0x47, 0x3B, 0x4C, 0x23, 0x78, 0x00, 0x2B,
-0x03, 0xD1, 0x3A, 0x4B, 0x1B, 0x78, 0x00, 0x2B, 0x0F, 0xD0, 0x23, 0x78,
-0x00, 0xF0, 0x94, 0xFC, 0x22, 0x78, 0x2E, 0x4B, 0x00, 0x2A, 0x01, 0xD0,
-0x1E, 0x70, 0x01, 0xE0, 0x0D, 0x22, 0x1A, 0x70, 0x31, 0x4A, 0x00, 0x23,
-0x13, 0x70, 0x31, 0x4A, 0x13, 0x70, 0x2C, 0x4B, 0x1B, 0x78, 0x00, 0x2B,
-0x2C, 0xD0, 0x2F, 0x4D, 0x2B, 0x78, 0x00, 0x2B, 0x28, 0xD0, 0x2A, 0x4C,
-0x13, 0x20, 0x23, 0x68, 0x98, 0x47, 0x00, 0xF0, 0x0F, 0xFA, 0x03, 0xF0,
-0x08, 0xFB, 0x03, 0xF0, 0x8B, 0xFA, 0x29, 0x4B, 0x18, 0x78, 0x01, 0xF0,
-0xA1, 0xF8, 0x00, 0xF0, 0xC7, 0xFD, 0x27, 0x4A, 0x01, 0x23, 0x13, 0x70,
-0x26, 0x4A, 0x13, 0x80, 0x02, 0xF0, 0xDE, 0xFF, 0x2B, 0x78, 0x00, 0x2B,
-0xFC, 0xD1, 0x23, 0x68, 0x14, 0x20, 0x98, 0x47, 0x00, 0xF0, 0xF6, 0xF9,
-0x03, 0xF0, 0xEF, 0xFA, 0x03, 0xF0, 0x72, 0xFA, 0x1C, 0x4B, 0x18, 0x78,
-0x01, 0xF0, 0x88, 0xF8, 0x10, 0x4B, 0x1E, 0x70, 0x00, 0xF0, 0x7E, 0xFF,
-0x0E, 0x4C, 0x27, 0x78, 0x78, 0xB2, 0x13, 0x28, 0x00, 0xD9, 0x8D, 0xE1,
-0x05, 0xF0, 0xD4, 0xF8, 0x74, 0x00, 0x8C, 0x01, 0x78, 0x01, 0x8C, 0x01,
-0x8C, 0x01, 0x8C, 0x01, 0x8C, 0x01, 0x8C, 0x01, 0x8C, 0x01, 0x8C, 0x01,
-0x8C, 0x01, 0x8C, 0x01, 0x8C, 0x01, 0x68, 0x00, 0x8C, 0x01, 0x3A, 0x00,
-0x30, 0x00, 0x5F, 0x00, 0x8C, 0x01, 0x89, 0x01, 0xAE, 0x09, 0x00, 0x20,
-0x1D, 0x03, 0x00, 0x20, 0x50, 0x11, 0x00, 0x20, 0xEB, 0x01, 0x00, 0x20,
-0xE9, 0x01, 0x00, 0x20, 0xEA, 0x01, 0x00, 0x20, 0xAA, 0x0A, 0x00, 0x20,
-0xF8, 0x01, 0x00, 0x20, 0xE8, 0x01, 0x00, 0x20, 0xE7, 0x01, 0x00, 0x20,
-0xE5, 0x01, 0x00, 0x20, 0x48, 0x0D, 0x00, 0x20, 0xF6, 0x03, 0x00, 0x20,
-0x08, 0x03, 0x00, 0x20, 0xB1, 0x4B, 0x00, 0x22, 0x1A, 0x70, 0x00, 0xF0,
-0x7D, 0xFE, 0xB0, 0x4B, 0x1B, 0x78, 0x00, 0x2B, 0x00, 0xD0, 0x55, 0xE1,
-0xAE, 0x4C, 0x23, 0x78, 0x00, 0x2B, 0x03, 0xD0, 0x00, 0x20, 0xAD, 0x49,
-0x03, 0xF0, 0xB8, 0xFC, 0x23, 0x78, 0x00, 0x2B, 0x06, 0xD0, 0x01, 0x21,
-0x00, 0x20, 0xAA, 0x4A, 0x0B, 0x1C, 0x00, 0x90, 0x03, 0xF0, 0x56, 0xFC,
-0xA8, 0x4B, 0x98, 0x78, 0x03, 0xF0, 0x78, 0xFA, 0xA7, 0x4D, 0xE8, 0x7B,
-0x03, 0xF0, 0x52, 0xF8, 0xA6, 0x4C, 0x20, 0x60, 0x28, 0x7C, 0x03, 0xF0,
-0x4D, 0xF8, 0x11, 0x23, 0x60, 0x60, 0xEB, 0x56, 0xEA, 0x7B, 0x53, 0x43,
-0xA3, 0x60, 0x9A, 0x4B, 0x00, 0x22, 0x1A, 0x70, 0xA0, 0x4B, 0x1B, 0x78,
-0xA0, 0x4B, 0x18, 0x78, 0x01, 0xF0, 0x14, 0xF8, 0x95, 0x4B, 0x9D, 0x4D,
-0x00, 0x24, 0x1C, 0x70, 0x2B, 0x78, 0x00, 0xF0, 0x29, 0xFD, 0x03, 0xF0,
-0x8B, 0xFF, 0x00, 0xF0, 0x25, 0xFD, 0x2C, 0x70, 0x8F, 0x4B, 0x01, 0x24,
-0x1C, 0x70, 0x00, 0xF0, 0x9B, 0xFC, 0x97, 0x4B, 0x1B, 0x68, 0x9A, 0x05,
-0x13, 0xD5, 0x96, 0x4A, 0x96, 0x4B, 0x04, 0x20, 0x1A, 0x60, 0x96, 0x4B,
-0x19, 0x68, 0x01, 0x43, 0x19, 0x60, 0x19, 0x68, 0x02, 0x20, 0x81, 0x43,
-0x19, 0x60, 0x19, 0x68, 0x0C, 0x43, 0x1C, 0x60, 0x91, 0x4B, 0x00, 0x21,
-0x19, 0x60, 0x91, 0x4B, 0x1A, 0x60, 0x91, 0x4C, 0x03, 0x20, 0x23, 0x68,
-0x98, 0x47, 0x03, 0xF0, 0x3F, 0xF8, 0x23, 0x68, 0x05, 0x20, 0x98, 0x47,
-0x02, 0xF0, 0xE4, 0xFF, 0x8C, 0x4C, 0x8D, 0x4D, 0x01, 0x20, 0x40, 0x42,
-0x21, 0x1C, 0x2A, 0x1C, 0x04, 0xF0, 0x4C, 0xFC, 0x79, 0x4B, 0x1B, 0x78,
-0x00, 0x2B, 0x03, 0xD0, 0x0C, 0x20, 0x88, 0x49, 0x03, 0xF0, 0x4E, 0xFC,
-0x87, 0x4A, 0x23, 0x68, 0x13, 0x80, 0x2B, 0x68, 0x53, 0x80, 0x73, 0x4B,
-0x1B, 0x78, 0x00, 0x2B, 0x06, 0xD0, 0x01, 0x23, 0x02, 0x21, 0x00, 0x93,
-0x0C, 0x20, 0x0B, 0x1C, 0x03, 0xF0, 0xE6, 0xFB, 0x7B, 0x4C, 0x06, 0x20,
-0x23, 0x68, 0x98, 0x47, 0x03, 0xF0, 0xF4, 0xFF, 0x04, 0xF0, 0x64, 0xF9,
-0x04, 0xF0, 0x98, 0xFB, 0x00, 0xF0, 0x62, 0xF9, 0x04, 0xF0, 0x06, 0xFD,
-0x04, 0xF0, 0x7E, 0xFE, 0x78, 0x4B, 0x1B, 0x78, 0x00, 0x2B, 0x2A, 0xD1,
-0x23, 0x68, 0x07, 0x20, 0x98, 0x47, 0x01, 0xF0, 0x51, 0xFA, 0x23, 0x68,
-0x08, 0x20, 0x98, 0x47, 0x02, 0xF0, 0xB2, 0xFF, 0x02, 0xF0, 0xBA, 0xFF,
-0x23, 0x68, 0x09, 0x20, 0x98, 0x47, 0x01, 0xF0, 0x69, 0xFA, 0x01, 0xF0,
-0xD1, 0xFB, 0x23, 0x68, 0x0A, 0x20, 0x98, 0x47, 0x01, 0xF0, 0x6E, 0xFC,
-0x02, 0xF0, 0x44, 0xFB, 0x23, 0x68, 0x0B, 0x20, 0x98, 0x47, 0x01, 0xF0,
-0xB8, 0xFE, 0x01, 0xF0, 0xD7, 0xFF, 0x23, 0x68, 0x0E, 0x20, 0x98, 0x47,
-0x02, 0xF0, 0x84, 0xF8, 0x02, 0xF0, 0xF2, 0xF9, 0x23, 0x68, 0x10, 0x20,
-0x98, 0x47, 0x00, 0xF0, 0x81, 0xF9, 0x5B, 0x4B, 0x0F, 0x20, 0x1B, 0x68,
-0x98, 0x47, 0x5E, 0x4B, 0x1B, 0x78, 0x00, 0x2B, 0x3C, 0xD1, 0x02, 0xF0,
-0x4F, 0xFA, 0x5C, 0x4B, 0x1A, 0x68, 0x5C, 0x4B, 0x00, 0x2A, 0x04, 0xD1,
-0x5B, 0x49, 0x09, 0x68, 0x00, 0x29, 0x00, 0xDD, 0x1A, 0x70, 0x47, 0x4A,
-0x19, 0x78, 0x32, 0x32, 0x12, 0x78, 0x91, 0x42, 0x01, 0xD3, 0x00, 0x22,
-0x1A, 0x70, 0x1B, 0x78, 0x00, 0x2B, 0x21, 0xD1, 0x53, 0x4B, 0x51, 0x4C,
-0x1B, 0x68, 0x00, 0x2B, 0x09, 0xDD, 0x20, 0x68, 0x00, 0x28, 0x06, 0xD1,
-0x39, 0x4B, 0x1B, 0x78, 0x00, 0x2B, 0x02, 0xD0, 0x4E, 0x49, 0x03, 0xF0,
-0xCF, 0xFB, 0x4E, 0x4B, 0x1B, 0x68, 0x98, 0x47, 0x23, 0x68, 0x00, 0x2B,
-0x0A, 0xDD, 0x49, 0x4B, 0x18, 0x68, 0x00, 0x28, 0x06, 0xD1, 0x31, 0x4B,
-0x1B, 0x78, 0x00, 0x2B, 0x02, 0xD0, 0x48, 0x49, 0x03, 0xF0, 0xBE, 0xFB,
-0x02, 0xF0, 0x72, 0xFA, 0x41, 0x4B, 0x1A, 0x78, 0x01, 0x32, 0x1A, 0x70,
-0x32, 0x4B, 0x1B, 0x68, 0x9A, 0x05, 0x23, 0xD5, 0x34, 0x4B, 0x18, 0x68,
-0x2A, 0x4B, 0x1A, 0x79, 0x19, 0x78, 0x2F, 0x4B, 0x18, 0x1A, 0x53, 0x1C,
-0x98, 0x40, 0x04, 0xF0, 0x8D, 0xFF, 0x23, 0x4C, 0x2F, 0x4D, 0x23, 0x78,
-0x28, 0x60, 0x00, 0x2B, 0x03, 0xD0, 0x00, 0x20, 0x39, 0x49, 0x03, 0xF0,
-0x9F, 0xFB, 0x23, 0x78, 0x00, 0x2B, 0x06, 0xD0, 0x00, 0x20, 0x01, 0x21,
-0x2A, 0x1C, 0x04, 0x23, 0x00, 0x90, 0x03, 0xF0, 0x3D, 0xFB, 0x24, 0x4B,
-0x01, 0x21, 0x1A, 0x68, 0x8A, 0x43, 0x1A, 0x60, 0x80, 0x23, 0xDB, 0x05,
-0x9A, 0x6C, 0x01, 0x21, 0x0A, 0x43, 0x9A, 0x64, 0x00, 0xF0, 0x1E, 0xFC,
-0x2D, 0x4B, 0x00, 0x20, 0x18, 0x56, 0x00, 0xF0, 0x5D, 0xFE, 0x17, 0xE0,
-0x0F, 0x4B, 0x1B, 0x78, 0x00, 0x2B, 0x03, 0xD0, 0x05, 0x20, 0x29, 0x49,
-0x03, 0xF0, 0x7A, 0xFB, 0x01, 0x20, 0x00, 0xF0, 0xF9, 0xFE, 0x00, 0x20,
-0x00, 0xF0, 0xF6, 0xFE, 0x13, 0x23, 0x23, 0x70, 0x06, 0xE0, 0x00, 0xF0,
-0x0D, 0xFC, 0x03, 0xE0, 0x13, 0x4B, 0x11, 0x20, 0x1B, 0x68, 0x98, 0x47,
-0x20, 0x4B, 0x1F, 0x70, 0xEB, 0xE5, 0xC0, 0x46, 0xEA, 0x01, 0x00, 0x20,
-0xE0, 0x01, 0x00, 0x20, 0xEB, 0x01, 0x00, 0x20, 0x34, 0x59, 0x00, 0x00,
-0xAC, 0x0A, 0x00, 0x20, 0xAA, 0x0A, 0x00, 0x20, 0xAE, 0x09, 0x00, 0x20,
-0xFC, 0x02, 0x00, 0x20, 0x1D, 0x03, 0x00, 0x20, 0x48, 0x0D, 0x00, 0x20,
-0x58, 0x00, 0x00, 0x20, 0xFF, 0xFF, 0xFF, 0x00, 0x14, 0xE0, 0x00, 0xE0,
-0x10, 0xE0, 0x00, 0xE0, 0x18, 0xE0, 0x00, 0xE0, 0xFC, 0x01, 0x00, 0x20,
-0xF8, 0x01, 0x00, 0x20, 0x34, 0x11, 0x00, 0x20, 0x38, 0x11, 0x00, 0x20,
-0x38, 0x59, 0x00, 0x00, 0x54, 0x11, 0x00, 0x20, 0x48, 0x11, 0x00, 0x20,
-0x20, 0x01, 0x00, 0x20, 0xCA, 0x00, 0x00, 0x20, 0x9C, 0x0D, 0x00, 0x20,
-0x3E, 0x59, 0x00, 0x00, 0x00, 0x02, 0x00, 0x20, 0x47, 0x59, 0x00, 0x00,
-0x51, 0x59, 0x00, 0x00, 0xB3, 0x01, 0x00, 0x20, 0x5E, 0x59, 0x00, 0x00,
-0x56, 0x00, 0x00, 0x20, 0x08, 0xB5, 0x01, 0xF0, 0x99, 0xFD, 0x01, 0xF0,
-0xB3, 0xFD, 0x03, 0x4B, 0x1B, 0x68, 0x98, 0x47, 0x02, 0xF0, 0xD2, 0xF9,
-0x08, 0xBD, 0xC0, 0x46, 0x00, 0x02, 0x00, 0x20, 0x10, 0xB5, 0x04, 0xF0,
-0xEF, 0xFD, 0x05, 0x4C, 0x00, 0x20, 0x23, 0x68, 0x98, 0x47, 0x04, 0xF0,
-0x19, 0xFE, 0x23, 0x68, 0x01, 0x20, 0x98, 0x47, 0x10, 0xBD, 0xC0, 0x46,
-0xF8, 0x01, 0x00, 0x20, 0x7F, 0xB5, 0x17, 0x4D, 0x17, 0x4B, 0x5B, 0x1B,
-0x03, 0x93, 0x17, 0x4B, 0x1B, 0x78, 0x00, 0x2B, 0x06, 0xD0, 0x00, 0x20,
-0x01, 0x21, 0x03, 0xAA, 0x04, 0x23, 0x00, 0x90, 0x03, 0xF0, 0xA0, 0xFA,
-0x12, 0x4E, 0x18, 0xE0, 0x14, 0x2C, 0x00, 0xDD, 0x14, 0x24, 0xE1, 0xB2,
-0x08, 0x1C, 0x03, 0xE0, 0x01, 0x38, 0xC0, 0xB2, 0x2B, 0x5C, 0x33, 0x54,
-0x00, 0x28, 0xF9, 0xD1, 0x0A, 0x4B, 0x1B, 0x78, 0x00, 0x2B, 0x04, 0xD0,
-0x09, 0x4A, 0x01, 0x23, 0x00, 0x90, 0x03, 0xF0, 0x89, 0xFA, 0x03, 0x9B,
-0x2D, 0x19, 0x1B, 0x1B, 0x03, 0x93, 0x03, 0x9C, 0x00, 0x2C, 0xE3, 0xD1,
-0x7F, 0xBD, 0xC0, 0x46, 0x0C, 0x1E, 0x00, 0x20, 0x00, 0x20, 0x00, 0x20,
-0xEB, 0x01, 0x00, 0x20, 0x54, 0x11, 0x00, 0x20, 0x13, 0xB5, 0x1E, 0x4B,
-0x1B, 0x78, 0x00, 0x2B, 0x37, 0xD0, 0x1D, 0x4C, 0x00, 0x23, 0x23, 0x70,
-0x1C, 0x4B, 0x04, 0x20, 0x1B, 0x68, 0x98, 0x47, 0x1B, 0x4B, 0x1C, 0x4A,
-0x59, 0x68, 0x1B, 0x68, 0x11, 0x80, 0x53, 0x80, 0x1A, 0x4B, 0x1B, 0x78,
-0x00, 0x2B, 0x06, 0xD0, 0x01, 0x23, 0x02, 0x21, 0x00, 0x93, 0x18, 0x20,
-0x0B, 0x1C, 0x03, 0xF0, 0x5B, 0xFA, 0x23, 0x78, 0x15, 0x4C, 0x00, 0x2B,
-0x1A, 0xD0, 0x13, 0x4B, 0x1B, 0x78, 0x00, 0x2B, 0x03, 0xD0, 0x00, 0x20,
-0x12, 0x49, 0x03, 0xF0, 0xA7, 0xFA, 0x12, 0x4A, 0x01, 0x23, 0x13, 0x70,
-0x22, 0x68, 0x02, 0x2A, 0x04, 0xDC, 0xD2, 0x18, 0x22, 0x60, 0x0F, 0x4A,
-0x13, 0x70, 0x08, 0xE0, 0xFF, 0xF7, 0x74, 0xFF, 0x0D, 0x4B, 0x0D, 0x22,
-0x1A, 0x70, 0x00, 0x23, 0x23, 0x60, 0x00, 0xE0, 0x23, 0x60, 0x13, 0xBD,
-0x1C, 0x03, 0x00, 0x20, 0x3D, 0x11, 0x00, 0x20, 0xF8, 0x01, 0x00, 0x20,
-0x70, 0x01, 0x00, 0x20, 0x54, 0x11, 0x00, 0x20, 0xEB, 0x01, 0x00, 0x20,
-0x84, 0x01, 0x00, 0x20, 0xD0, 0x58, 0x00, 0x00, 0x48, 0x11, 0x00, 0x20,
-0x14, 0x09, 0x00, 0x20, 0x1D, 0x03, 0x00, 0x20, 0xF0, 0xB5, 0xBA, 0x4B,
-0x85, 0xB0, 0x04, 0x33, 0xDB, 0x7F, 0x00, 0x24, 0xB8, 0x49, 0x0A, 0x22,
-0x09, 0xE0, 0x01, 0x3B, 0xDB, 0xB2, 0x10, 0x1C, 0x58, 0x43, 0x08, 0x18,
-0x3C, 0x25, 0x40, 0x5F, 0x00, 0x28, 0x00, 0xD0, 0x01, 0x24, 0x00, 0x2B,
-0xF3, 0xD1, 0xB2, 0x4B, 0xB2, 0x4A, 0x1B, 0x78, 0x07, 0xE0, 0x01, 0x3B,
-0xDB, 0xB2, 0x19, 0x1D, 0x49, 0x00, 0x89, 0x5E, 0x00, 0x29, 0x00, 0xD0,
-0x01, 0x24, 0x00, 0x2B, 0xF5, 0xD1, 0xAD, 0x4A, 0x00, 0x2C, 0x04, 0xD1,
-0x13, 0x68, 0xAC, 0x49, 0x8B, 0x42, 0x01, 0xD0, 0x01, 0x33, 0x13, 0x60,
-0xAA, 0x4B, 0x00, 0x22, 0x1A, 0x70, 0xA4, 0x4B, 0x1A, 0x68, 0xA2, 0x4B,
-0x00, 0x2A, 0x7C, 0xD1, 0xA3, 0x4A, 0x12, 0x68, 0x00, 0x2A, 0x78, 0xD1,
-0x1A, 0x1C, 0x34, 0x32, 0x10, 0x78, 0x00, 0x28, 0x41, 0xD1, 0xA3, 0x4A,
-0x12, 0x78, 0x01, 0x2A, 0x17, 0xD1, 0xA2, 0x4B, 0x18, 0x70, 0xA2, 0x4B,
-0x1A, 0x70, 0xA2, 0x4B, 0x18, 0x70, 0xA2, 0x4B, 0x1B, 0x78, 0x00, 0x2B,
-0x02, 0xD0, 0xA1, 0x49, 0x03, 0xF0, 0x2E, 0xFA, 0x99, 0x4B, 0x01, 0x22,
-0x1A, 0x70, 0x01, 0xF0, 0x9F, 0xFC, 0x01, 0xF0, 0xB9, 0xFC, 0x97, 0x4B,
-0x00, 0x22, 0x1A, 0x70, 0x67, 0xE1, 0x9B, 0x4A, 0x3C, 0x33, 0x1B, 0x78,
-0x12, 0x68, 0x9A, 0x42, 0x1F, 0xDB, 0x96, 0x4B, 0x1B, 0x78, 0x00, 0x2B,
-0x02, 0xD0, 0x97, 0x49, 0x03, 0xF0, 0x16, 0xFA, 0x96, 0x4B, 0x87, 0x49,
-0x1A, 0x68, 0x3D, 0x31, 0x01, 0x32, 0x1A, 0x60, 0x09, 0x78, 0x8A, 0x42,
-0x0F, 0xDB, 0x00, 0x20, 0x18, 0x60, 0x8A, 0x4B, 0x18, 0x70, 0x8A, 0x4B,
-0x18, 0x70, 0x8B, 0x4B, 0x1B, 0x78, 0x83, 0x42, 0x02, 0xD0, 0x8E, 0x49,
-0x03, 0xF0, 0x00, 0xFA, 0x82, 0x4B, 0x02, 0x22, 0x1A, 0x70, 0x85, 0x4B,
-0x8B, 0x4A, 0x00, 0x21, 0x19, 0x70, 0x10, 0x68, 0x85, 0x4B, 0x19, 0x60,
-0x13, 0x1C, 0x88, 0x42, 0x0E, 0xDD, 0x01, 0x38, 0x10, 0x60, 0x8C, 0x42,
-0x00, 0xD0, 0x11, 0x60, 0x1A, 0x68, 0x01, 0x2A, 0x00, 0xD0, 0x18, 0xE1,
-0x00, 0x22, 0x1A, 0x60, 0x76, 0x4B, 0x03, 0x22, 0x1A, 0x70, 0x28, 0xE1,
-0x80, 0x4B, 0x81, 0x49, 0x04, 0x33, 0xDB, 0x8F, 0x8B, 0x42, 0x00, 0xD1,
-0x0B, 0xE1, 0x7F, 0x49, 0x09, 0x68, 0x99, 0x42, 0x00, 0xDA, 0x06, 0xE1,
-0x68, 0x4B, 0x6C, 0x48, 0x19, 0x1C, 0x3E, 0x31, 0x09, 0x78, 0x00, 0x68,
-0x88, 0x42, 0x00, 0xDA, 0xFD, 0xE0, 0x3F, 0x33, 0x1B, 0x78, 0x13, 0x60,
-0xF9, 0xE0, 0x04, 0x33, 0xD8, 0x7F, 0x00, 0x23, 0x1A, 0x1C, 0x75, 0x49,
-0x31, 0xE0, 0x01, 0x38, 0xC0, 0xB2, 0x0A, 0x24, 0x44, 0x43, 0x5E, 0x4F,
-0x3D, 0x19, 0x3C, 0x26, 0xAD, 0x5F, 0x00, 0x2D, 0x27, 0xDD, 0x0C, 0x19,
-0x3C, 0x27, 0xE4, 0x5F, 0x00, 0x2C, 0x22, 0xDD, 0x44, 0x00, 0x0D, 0x19,
-0xAF, 0x88, 0x57, 0x4D, 0x3E, 0xB2, 0x2C, 0x19, 0xA4, 0x88, 0x25, 0xB2,
-0x76, 0x1B, 0x02, 0xD4, 0x3C, 0x1B, 0xA4, 0xB2, 0x01, 0xE0, 0xE4, 0x1B,
-0xA4, 0xB2, 0x05, 0x1C, 0x64, 0x4E, 0x50, 0x4F, 0x10, 0x35, 0x6D, 0x00,
-0xA2, 0x18, 0xAC, 0x5B, 0xED, 0x5B, 0x27, 0xB2, 0x2E, 0xB2, 0x92, 0xB2,
-0xBF, 0x1B, 0x02, 0xD4, 0x64, 0x1B, 0xA4, 0xB2, 0x01, 0xE0, 0x2C, 0x1B,
-0xA4, 0xB2, 0xE3, 0x18, 0x9B, 0xB2, 0x00, 0x28, 0xCB, 0xD1, 0x56, 0x49,
-0x08, 0x60, 0x4D, 0x49, 0x0C, 0x78, 0x43, 0x49, 0x00, 0x2C, 0x40, 0xD0,
-0x34, 0x31, 0x0B, 0x78, 0x00, 0x2B, 0x00, 0xD0, 0xB3, 0xE0, 0x4A, 0x4B,
-0x1B, 0x78, 0x00, 0x2B, 0x02, 0xD0, 0x53, 0x49, 0x03, 0xF0, 0x7E, 0xF9,
-0x4F, 0x4C, 0x52, 0x4A, 0x23, 0x68, 0x13, 0x80, 0x51, 0x4B, 0x1B, 0x68,
-0x53, 0x80, 0x43, 0x4B, 0x1B, 0x78, 0x00, 0x2B, 0x06, 0xD0, 0x01, 0x23,
-0x02, 0x21, 0x00, 0x93, 0x00, 0x20, 0x0B, 0x1C, 0x03, 0xF0, 0x14, 0xF9,
-0x32, 0x49, 0x20, 0x68, 0x4A, 0x8F, 0x3B, 0x4B, 0x90, 0x42, 0x14, 0xDA,
-0x41, 0x4A, 0x47, 0x48, 0x45, 0x32, 0x12, 0x78, 0x00, 0x68, 0x90, 0x42,
-0x0D, 0xDA, 0x1B, 0x78, 0x00, 0x2B, 0x00, 0xD0, 0x89, 0xE0, 0x37, 0x4B,
-0x3C, 0x31, 0x1A, 0x68, 0x09, 0x78, 0x8A, 0x42, 0x00, 0xDB, 0x82, 0xE0,
-0x01, 0x32, 0x1A, 0x60, 0x7F, 0xE0, 0x01, 0x22, 0x1A, 0x70, 0x31, 0x4A,
-0x00, 0x23, 0x13, 0x60, 0x31, 0x4A, 0x13, 0x60, 0x77, 0xE0, 0x08, 0x1C,
-0x34, 0x30, 0x00, 0x78, 0x00, 0x28, 0x72, 0xD1, 0x32, 0x48, 0x09, 0x8F,
-0x00, 0x68, 0x88, 0x42, 0x09, 0xDB, 0x2E, 0x49, 0x33, 0x48, 0x45, 0x31,
-0x09, 0x78, 0x00, 0x68, 0x88, 0x42, 0x02, 0xDB, 0x22, 0x49, 0x01, 0x20,
-0x08, 0x70, 0x1F, 0x49, 0x09, 0x78, 0x00, 0x29, 0x08, 0xD1, 0x15, 0x49,
-0x08, 0x8F, 0x27, 0x49, 0x88, 0x42, 0x5A, 0xD0, 0x1C, 0x49, 0x09, 0x78,
-0x00, 0x29, 0x56, 0xD0, 0x11, 0x49, 0x09, 0x68, 0x01, 0x29, 0x05, 0xDC,
-0x0E, 0x49, 0xC9, 0x8E, 0x8A, 0x42, 0x01, 0xD8, 0x8B, 0x42, 0x49, 0xD9,
-0x13, 0x4B, 0x00, 0x20, 0x18, 0x70, 0x13, 0x4B, 0x01, 0x22, 0x1A, 0x70,
-0x12, 0x4B, 0x18, 0x70, 0x12, 0x4B, 0x1B, 0x78, 0x83, 0x42, 0x02, 0xD0,
-0x11, 0x49, 0x03, 0xF0, 0x0F, 0xF9, 0x0A, 0x4B, 0x01, 0x22, 0x1A, 0x70,
-0x01, 0xF0, 0x80, 0xFB, 0x01, 0xF0, 0x9A, 0xFB, 0x35, 0xE0, 0xC0, 0x46,
-0xAE, 0x09, 0x00, 0x20, 0x9C, 0x0D, 0x00, 0x20, 0x7C, 0x09, 0x00, 0x20,
-0xE0, 0x00, 0x00, 0x20, 0xC8, 0x01, 0x00, 0x20, 0xFF, 0xFF, 0xFF, 0x7F,
-0xB3, 0x01, 0x00, 0x20, 0xB4, 0x01, 0x00, 0x20, 0xDC, 0x01, 0x00, 0x20,
-0xDD, 0x01, 0x00, 0x20, 0xD4, 0x01, 0x00, 0x20, 0xEB, 0x01, 0x00, 0x20,
-0xDA, 0x58, 0x00, 0x00, 0xD8, 0x01, 0x00, 0x20, 0xE4, 0x58, 0x00, 0x00,
-0xD0, 0x01, 0x00, 0x20, 0xEC, 0x58, 0x00, 0x00, 0xCC, 0x01, 0x00, 0x20,
-0x48, 0x0D, 0x00, 0x20, 0xFF, 0xFF, 0x00, 0x00, 0x34, 0x11, 0x00, 0x20,
-0x20, 0x03, 0x00, 0x20, 0xF5, 0x58, 0x00, 0x00, 0x54, 0x11, 0x00, 0x20,
-0x38, 0x11, 0x00, 0x20, 0x0D, 0x4B, 0x01, 0x22, 0x1A, 0x70, 0x0D, 0x4B,
-0x34, 0x33, 0x1B, 0x78, 0x00, 0x2B, 0x10, 0xD0, 0x0B, 0x4B, 0x1A, 0x78,
-0x00, 0x2A, 0x0C, 0xD0, 0x0A, 0x4A, 0x00, 0x21, 0x51, 0x56, 0x03, 0x29,
-0x07, 0xD0, 0x09, 0x49, 0x09, 0x78, 0x48, 0x42, 0x41, 0x41, 0x01, 0x31,
-0x11, 0x70, 0x00, 0x22, 0x1A, 0x70, 0x05, 0xB0, 0xF0, 0xBD, 0xC0, 0x46,
-0xB4, 0x01, 0x00, 0x20, 0xAE, 0x09, 0x00, 0x20, 0xDC, 0x01, 0x00, 0x20,
-0xB3, 0x01, 0x00, 0x20, 0xDD, 0x01, 0x00, 0x20, 0x10, 0xB5, 0x54, 0x4B,
-0x1B, 0x78, 0x00, 0x2B, 0x0A, 0xD0, 0x53, 0x4B, 0x1B, 0x68, 0x98, 0x47,
-0x01, 0xF0, 0x1A, 0xFB, 0x01, 0xF0, 0x34, 0xFB, 0x01, 0xF0, 0x56, 0xFF,
-0x02, 0xF0, 0x90, 0xFB, 0x4E, 0x4B, 0x02, 0x21, 0x1A, 0x68, 0x8A, 0x43,
-0x1A, 0x60, 0x19, 0x68, 0x80, 0x22, 0xD2, 0x05, 0x90, 0x68, 0x91, 0x60,
-0x19, 0x68, 0x08, 0x20, 0x81, 0x43, 0x19, 0x60, 0x19, 0x68, 0x90, 0x68,
-0x91, 0x60, 0x19, 0x68, 0x04, 0x20, 0x81, 0x43, 0x19, 0x60, 0x1B, 0x68,
-0x91, 0x68, 0x93, 0x60, 0x40, 0x4B, 0x18, 0x78, 0x42, 0x4B, 0x1B, 0x78,
-0x00, 0x28, 0x32, 0xD0, 0x00, 0x2B, 0x03, 0xD0, 0x00, 0x20, 0x40, 0x49,
-0x03, 0xF0, 0x7A, 0xF8, 0x3F, 0x4B, 0x80, 0x22, 0x19, 0x68, 0x52, 0x00,
-0x0A, 0x43, 0x1A, 0x60, 0x1A, 0x68, 0xA0, 0x23, 0xDB, 0x05, 0x99, 0x68,
-0x9A, 0x60, 0x37, 0x4B, 0x3A, 0x4A, 0x19, 0x68, 0x0A, 0x40, 0x1A, 0x60,
-0x1A, 0x68, 0x80, 0x23, 0xDB, 0x05, 0x99, 0x68, 0x9A, 0x60, 0x37, 0x4A,
-0x01, 0x21, 0x11, 0x70, 0x19, 0x68, 0x80, 0x22, 0x52, 0x04, 0x0A, 0x43,
-0x1A, 0x60, 0xC0, 0x46, 0xC0, 0x46, 0xC0, 0x46, 0xC0, 0x46, 0x62, 0xB6,
-0x31, 0x4A, 0x19, 0x68, 0x0A, 0x40, 0x1A, 0x60, 0xBF, 0xF3, 0x6F, 0x8F,
-0xFA, 0x20, 0xC0, 0x00, 0x02, 0xF0, 0x6E, 0xFC, 0x11, 0xE0, 0x00, 0x2B,
-0x02, 0xD0, 0x2C, 0x49, 0x03, 0xF0, 0x48, 0xF8, 0x2B, 0x48, 0x02, 0xF0,
-0x65, 0xFC, 0x2B, 0x4B, 0x1B, 0x78, 0x00, 0x2B, 0x05, 0xD1, 0x2A, 0x4B,
-0x1B, 0x78, 0x00, 0x2B, 0x01, 0xD1, 0x02, 0xF0, 0x59, 0xFE, 0x1D, 0x4B,
-0x02, 0x21, 0x1A, 0x68, 0x0A, 0x43, 0x1A, 0x60, 0x19, 0x68, 0x80, 0x22,
-0xD2, 0x05, 0x90, 0x68, 0x91, 0x60, 0x23, 0x49, 0x01, 0x31, 0xC8, 0x7F,
-0x08, 0x21, 0x00, 0x28, 0x06, 0xD0, 0x18, 0x68, 0x01, 0x43, 0x19, 0x60,
-0x19, 0x68, 0x90, 0x68, 0x91, 0x60, 0x05, 0xE0, 0x18, 0x68, 0x88, 0x43,
-0x18, 0x60, 0x19, 0x68, 0x90, 0x68, 0x91, 0x60, 0x1A, 0x68, 0x04, 0x21,
-0x0A, 0x43, 0x1A, 0x60, 0x1A, 0x68, 0x80, 0x23, 0xDB, 0x05, 0xFA, 0x20,
-0x99, 0x68, 0xC0, 0x00, 0x9A, 0x60, 0x02, 0xF0, 0x31, 0xFC, 0x06, 0x4B,
-0x1B, 0x78, 0x00, 0x2B, 0x06, 0xD0, 0x12, 0x4C, 0x0D, 0x20, 0x23, 0x68,
-0x98, 0x47, 0x23, 0x68, 0x12, 0x20, 0x98, 0x47, 0x10, 0xBD, 0xC0, 0x46,
-0xE8, 0x01, 0x00, 0x20, 0x68, 0x00, 0x00, 0x20, 0x14, 0x00, 0x00, 0x20,
-0xEB, 0x01, 0x00, 0x20, 0xFB, 0x58, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x20,
-0xFF, 0xFE, 0xFF, 0xFF, 0x2C, 0x00, 0x00, 0x20, 0xFF, 0xFF, 0xFF, 0xFE,
-0x01, 0x59, 0x00, 0x00, 0x40, 0x42, 0x0F, 0x00, 0xE5, 0x01, 0x00, 0x20,
-0xE4, 0x01, 0x00, 0x20, 0xAE, 0x09, 0x00, 0x20, 0xF8, 0x01, 0x00, 0x20,
-0x10, 0xB5, 0x31, 0x4B, 0x02, 0x24, 0x19, 0x78, 0x30, 0x4B, 0x4A, 0xB2,
-0x1B, 0x78, 0x00, 0x2B, 0x25, 0xD0, 0x2F, 0x4B, 0x1B, 0x78, 0x00, 0x2B,
-0x21, 0xD1, 0x2E, 0x4B, 0x1B, 0x78, 0x00, 0x2B, 0x1D, 0xD1, 0x2D, 0x4B,
-0xA2, 0x42, 0x07, 0xD0, 0x2C, 0x48, 0x80, 0x7B, 0x00, 0x28, 0x03, 0xD1,
-0x2B, 0x48, 0x00, 0x68, 0x00, 0x28, 0x03, 0xD0, 0x00, 0x21, 0x19, 0x60,
-0x01, 0x24, 0x0E, 0xE0, 0x28, 0x4A, 0x18, 0x68, 0x92, 0x68, 0x90, 0x42,
-0x01, 0xDA, 0x01, 0x30, 0x18, 0x60, 0x00, 0x29, 0x36, 0xD0, 0x21, 0x4B,
-0x00, 0x24, 0x1B, 0x68, 0x93, 0x42, 0x16, 0xDA, 0x30, 0xE0, 0x63, 0xB2,
-0x93, 0x42, 0x2D, 0xD0, 0x01, 0x2B, 0x1D, 0xD0, 0x02, 0x2B, 0x02, 0xD0,
-0x00, 0x2B, 0x0C, 0xD0, 0x24, 0xE0, 0x1D, 0x4B, 0x1B, 0x78, 0x00, 0x2B,
-0x03, 0xD0, 0x00, 0x20, 0x1B, 0x49, 0x02, 0xF0, 0xA5, 0xFF, 0x00, 0x20,
-0x02, 0xF0, 0x78, 0xFB, 0x18, 0xE0, 0x17, 0x4B, 0x1B, 0x78, 0x00, 0x2B,
-0x03, 0xD0, 0x00, 0x20, 0x16, 0x49, 0x02, 0xF0, 0x99, 0xFF, 0x12, 0x4B,
-0x58, 0x68, 0x02, 0xF0, 0x6B, 0xFB, 0x0B, 0xE0, 0x10, 0x4B, 0x1B, 0x78,
-0x00, 0x2B, 0x03, 0xD0, 0x00, 0x20, 0x11, 0x49, 0x02, 0xF0, 0x8C, 0xFF,
-0x0B, 0x4B, 0x18, 0x68, 0x02, 0xF0, 0x5E, 0xFB, 0x02, 0x4B, 0x1C, 0x70,
-0x02, 0xF0, 0x4C, 0xFB, 0x10, 0xBD, 0xC0, 0x46, 0x3C, 0x00, 0x00, 0x20,
-0x1C, 0x03, 0x00, 0x20, 0xE3, 0x01, 0x00, 0x20, 0xE2, 0x01, 0x00, 0x20,
-0x5C, 0x00, 0x00, 0x20, 0x70, 0x01, 0x00, 0x20, 0xE0, 0x00, 0x00, 0x20,
-0xFC, 0x02, 0x00, 0x20, 0xEB, 0x01, 0x00, 0x20, 0x09, 0x59, 0x00, 0x00,
-0x0E, 0x59, 0x00, 0x00, 0x13, 0x59, 0x00, 0x00, 0x08, 0xB5, 0x02, 0xF0,
-0x5F, 0xFB, 0x08, 0xBD, 0x08, 0xB5, 0x02, 0xF0, 0x4D, 0xFB, 0x08, 0xBD,
-0x08, 0xB5, 0x02, 0xF0, 0xE5, 0xFA, 0x80, 0x23, 0xDB, 0x05, 0x9A, 0x6C,
-0x01, 0x21, 0x0A, 0x43, 0x9A, 0x64, 0xFF, 0xF7, 0xF1, 0xFF, 0x08, 0xBD,
-0xF0, 0xB5, 0x87, 0xB0, 0xFF, 0xF7, 0xF0, 0xFF, 0x78, 0x4A, 0x79, 0x4C,
-0x53, 0x78, 0x15, 0x78, 0x78, 0x48, 0x10, 0xE0, 0x01, 0x3B, 0xDB, 0xB2,
-0x9A, 0x1C, 0x67, 0x46, 0xB2, 0x18, 0x79, 0x01, 0x52, 0x00, 0x12, 0x5B,
-0xC9, 0x18, 0x4F, 0x00, 0x3A, 0x52, 0x73, 0x4A, 0x00, 0x27, 0x8F, 0x54,
-0x00, 0x2B, 0xEF, 0xD1, 0x63, 0x46, 0x5A, 0x1E, 0xD2, 0xB2, 0x00, 0x2B,
-0x04, 0xD0, 0x56, 0x1C, 0x2B, 0x1C, 0xB6, 0x01, 0x94, 0x46, 0xF3, 0xE7,
-0x6C, 0x4B, 0x6D, 0x4C, 0x1B, 0x78, 0x6D, 0x48, 0x67, 0x49, 0x6D, 0x4A,
-0x0E, 0xE0, 0x01, 0x3B, 0xDB, 0xB2, 0xE5, 0x5C, 0xC6, 0x5C, 0x01, 0x35,
-0x02, 0x36, 0xAD, 0x01, 0xAD, 0x19, 0x6D, 0x00, 0x6E, 0x5A, 0x5D, 0x00,
-0xAE, 0x52, 0x67, 0x4D, 0x00, 0x26, 0xEE, 0x54, 0x00, 0x2B, 0xEE, 0xD1,
-0x65, 0x25, 0x03, 0x95, 0x5B, 0x4C, 0x66, 0xE0, 0xFF, 0xF7, 0xB2, 0xFF,
-0x26, 0x78, 0x63, 0x78, 0x05, 0x96, 0x2D, 0xE0, 0x01, 0x3B, 0xDB, 0xB2,
-0x58, 0x4F, 0xF0, 0x18, 0x04, 0x9D, 0x40, 0x00, 0x9A, 0x1C, 0xC0, 0x5B,
-0xAD, 0x18, 0x54, 0x4F, 0x6D, 0x00, 0xEF, 0x5B, 0xC7, 0x1B, 0x04, 0xD4,
-0x51, 0x4F, 0xED, 0x5B, 0x45, 0x1B, 0x02, 0x95, 0x03, 0xE0, 0x4F, 0x4F,
-0xED, 0x5B, 0x2D, 0x1A, 0x02, 0x95, 0x04, 0x98, 0x87, 0x18, 0x4C, 0x48,
-0x7F, 0x00, 0xC0, 0x5B, 0x4B, 0x4F, 0x84, 0x46, 0xF0, 0x18, 0x42, 0x00,
-0x15, 0x1C, 0x62, 0x46, 0xEA, 0x53, 0x49, 0x4D, 0x2F, 0x5C, 0x02, 0x9D,
-0xBD, 0x42, 0x00, 0xDA, 0x3D, 0x1C, 0x46, 0x4F, 0x3D, 0x54, 0x00, 0x2B,
-0xD2, 0xD1, 0x0B, 0x1C, 0x59, 0x1E, 0xC9, 0xB2, 0x00, 0x2B, 0x05, 0xD0,
-0x48, 0x1C, 0x80, 0x01, 0x05, 0x9B, 0x4E, 0x01, 0x04, 0x90, 0xF2, 0xE7,
-0x3F, 0x4B, 0x3C, 0x4A, 0x1B, 0x78, 0x22, 0xE0, 0x3E, 0x4D, 0x01, 0x3B,
-0xDB, 0xB2, 0x3E, 0x4F, 0xEE, 0x5C, 0x3E, 0x48, 0xFD, 0x5C, 0x59, 0x00,
-0x01, 0x36, 0x09, 0x5A, 0x02, 0x35, 0xB0, 0x01, 0x40, 0x19, 0x40, 0x00,
-0x87, 0x5A, 0x80, 0x5A, 0xCF, 0x1B, 0x01, 0xD4, 0x09, 0x1A, 0x00, 0xE0,
-0x41, 0x1A, 0xB6, 0x01, 0x75, 0x19, 0x2F, 0x48, 0x6D, 0x00, 0x46, 0x5B,
-0x33, 0x48, 0x5D, 0x00, 0x2E, 0x52, 0x33, 0x48, 0xC5, 0x5C, 0xA9, 0x42,
-0x00, 0xDA, 0x29, 0x1C, 0xC1, 0x54, 0x00, 0x2B, 0xDA, 0xD1, 0x03, 0x9B,
-0x01, 0x3B, 0xDB, 0xB2, 0x03, 0x93, 0x00, 0x2B, 0x92, 0xD1, 0x61, 0x78,
-0x24, 0x78, 0x24, 0x4A, 0x04, 0x94, 0x1E, 0xE0, 0x01, 0x3B, 0xDB, 0xB2,
-0x45, 0x01, 0xED, 0x18, 0x21, 0x4F, 0x6D, 0x00, 0xEE, 0x5B, 0x25, 0x88,
-0xAC, 0x46, 0x9D, 0x1C, 0x66, 0x45, 0x09, 0xD9, 0x27, 0x88, 0xF6, 0x1B,
-0x8F, 0x01, 0xBC, 0x46, 0x65, 0x44, 0x6D, 0x00, 0xB6, 0xB2, 0xAF, 0x5A,
-0xAE, 0x52, 0x05, 0xE0, 0x8E, 0x01, 0x75, 0x19, 0x6D, 0x00, 0xAE, 0x5A,
-0x00, 0x26, 0xAE, 0x52, 0x00, 0x2B, 0xE1, 0xD1, 0x01, 0x1C, 0x48, 0x1E,
-0xC0, 0xB2, 0x00, 0x29, 0x05, 0xD0, 0x41, 0x1C, 0x18, 0x4F, 0xCC, 0x01,
-0x04, 0x9B, 0xE4, 0x19, 0xF2, 0xE7, 0x11, 0x4B, 0x13, 0x4F, 0x1B, 0x78,
-0x10, 0x4E, 0x15, 0x48, 0x10, 0xE0, 0x01, 0x3B, 0xDB, 0xB2, 0xF5, 0x5C,
-0x13, 0x49, 0xED, 0x01, 0x5A, 0x00, 0x6D, 0x18, 0xD4, 0x5B, 0x29, 0x88,
-0x8C, 0x42, 0x03, 0xD9, 0x2D, 0x88, 0x64, 0x1B, 0x84, 0x52, 0x01, 0xE0,
-0x00, 0x25, 0x85, 0x52, 0x00, 0x2B, 0xEC, 0xD1, 0x07, 0xB0, 0xF0, 0xBD,
-0x0A, 0x03, 0x00, 0x20, 0x00, 0x40, 0x00, 0x40, 0xF8, 0x03, 0x00, 0x20,
-0xB3, 0x0A, 0x00, 0x20, 0x7C, 0x09, 0x00, 0x20, 0x30, 0x75, 0x00, 0x00,
-0x2A, 0x75, 0x00, 0x00, 0x14, 0x02, 0x00, 0x20, 0xA4, 0x0A, 0x00, 0x20,
-0x02, 0x40, 0x00, 0x40, 0x3C, 0x0D, 0x00, 0x20, 0x82, 0x40, 0x00, 0x40,
-0xF0, 0xB5, 0x87, 0xB0, 0x02, 0xF0, 0x4A, 0xF8, 0x02, 0xF0, 0x60, 0xF9,
-0x00, 0x28, 0xFB, 0xD1, 0x52, 0x4B, 0x1B, 0x78, 0x02, 0x2B, 0x09, 0xD0,
-0x51, 0x4B, 0x52, 0x49, 0x40, 0x33, 0x1A, 0x78, 0x53, 0x42, 0x54, 0x18,
-0xE0, 0x54, 0x01, 0x33, 0x93, 0x42, 0xFA, 0xDD, 0x4C, 0x4E, 0x4E, 0x4F,
-0x33, 0x1C, 0x40, 0x33, 0x1C, 0x78, 0x64, 0x42, 0x0C, 0xE0, 0xFA, 0x78,
-0x80, 0x23, 0x12, 0x19, 0xD2, 0xB2, 0xDB, 0x05, 0x1A, 0x71, 0xFF, 0xF7,
-0xC1, 0xFE, 0x28, 0x78, 0x20, 0x18, 0x03, 0xF0, 0xF3, 0xFD, 0x01, 0x34,
-0x35, 0x1C, 0x40, 0x35, 0x2B, 0x78, 0x9C, 0x42, 0xED, 0xDD, 0x00, 0x26,
-0x25, 0xE0, 0x2C, 0x78, 0x2F, 0x1C, 0x64, 0x42, 0x40, 0x3F, 0x1A, 0xE0,
-0x3E, 0x4B, 0xDA, 0x78, 0x80, 0x23, 0x12, 0x19, 0xDB, 0x05, 0xD2, 0xB2,
-0x1A, 0x71, 0xFF, 0xF7, 0xA7, 0xFE, 0x2D, 0x78, 0x04, 0xA9, 0x65, 0x19,
-0x05, 0xAA, 0x28, 0x1C, 0x03, 0xF0, 0xF8, 0xFD, 0x35, 0x49, 0x04, 0x9B,
-0x4A, 0x5D, 0xFF, 0x2B, 0x00, 0xDD, 0xFF, 0x23, 0x9A, 0x42, 0x00, 0xDA,
-0x1A, 0x1C, 0x4A, 0x55, 0x01, 0x34, 0x3D, 0x1C, 0x40, 0x35, 0x2B, 0x78,
-0x9C, 0x42, 0xDF, 0xDD, 0x01, 0x36, 0x2F, 0x4A, 0x2B, 0x4D, 0x13, 0x78,
-0x40, 0x35, 0x9E, 0x42, 0xD3, 0xDB, 0x01, 0xF0, 0xDF, 0xFF, 0x2C, 0x49,
-0x2A, 0x78, 0x0D, 0x78, 0x2B, 0x49, 0x27, 0x48, 0x09, 0x78, 0x01, 0x23,
-0x03, 0x91, 0x9B, 0x1A, 0x00, 0x21, 0x29, 0x4C, 0x10, 0x18, 0x94, 0x46,
-0x11, 0xE0, 0xC6, 0x18, 0x72, 0x1E, 0x12, 0x78, 0xC7, 0x5C, 0x6A, 0x43,
-0x02, 0x92, 0x03, 0x9A, 0x57, 0x43, 0x02, 0x9A, 0xD7, 0x19, 0x72, 0x78,
-0x6A, 0x43, 0xBA, 0x18, 0x94, 0x42, 0x01, 0xDB, 0x94, 0xB2, 0x19, 0x1C,
-0x01, 0x33, 0x9C, 0x45, 0xEB, 0xDC, 0x19, 0x4B, 0x1D, 0x4C, 0xDA, 0x78,
-0x51, 0x18, 0xC9, 0xB2, 0x99, 0x70, 0x13, 0x4B, 0x18, 0x78, 0x00, 0x28,
-0x05, 0xD1, 0x23, 0x78, 0x00, 0x2B, 0x02, 0xD0, 0x18, 0x49, 0x02, 0xF0,
-0xB7, 0xFD, 0x23, 0x78, 0x00, 0x2B, 0x0B, 0xD0, 0x0D, 0x4B, 0x00, 0x20,
-0x40, 0x33, 0x19, 0x78, 0x0C, 0x4A, 0x49, 0x00, 0x01, 0x31, 0xC9, 0xB2,
-0x01, 0x23, 0x00, 0x90, 0x02, 0xF0, 0x50, 0xFD, 0x0E, 0x4B, 0x1B, 0x78,
-0x00, 0x2B, 0x06, 0xD0, 0x01, 0x21, 0x00, 0x20, 0x0D, 0x4A, 0x0B, 0x1C,
-0x00, 0x90, 0x02, 0xF0, 0x45, 0xFD, 0x07, 0xB0, 0xF0, 0xBD, 0xC0, 0x46,
-0xE0, 0x01, 0x00, 0x20, 0x48, 0x0D, 0x00, 0x20, 0x93, 0x01, 0x00, 0x20,
-0xAA, 0x0A, 0x00, 0x20, 0x87, 0x0D, 0x00, 0x20, 0x54, 0x00, 0x00, 0x20,
-0x55, 0x00, 0x00, 0x20, 0xFF, 0xFF, 0x00, 0x00, 0xEB, 0x01, 0x00, 0x20,
-0x1A, 0x59, 0x00, 0x00, 0xAC, 0x0A, 0x00, 0x20, 0x13, 0xB5, 0x24, 0x4B,
-0x24, 0x4C, 0x1B, 0x68, 0x00, 0x2B, 0x0E, 0xD0, 0x23, 0x78, 0x00, 0x2B,
-0x03, 0xD0, 0x00, 0x20, 0x21, 0x49, 0x02, 0xF0, 0x77, 0xFD, 0xFF, 0xF7,
-0x6D, 0xFA, 0x23, 0x78, 0x00, 0x2B, 0x02, 0xD1, 0x02, 0xF0, 0x38, 0xF8,
-0xFE, 0xE7, 0x23, 0x78, 0x00, 0x2B, 0x09, 0xD0, 0x1B, 0x4C, 0x23, 0x68,
-0xDA, 0x00, 0x05, 0xD5, 0xFF, 0xF7, 0x5E, 0xFA, 0x22, 0x68, 0x19, 0x4B,
-0x13, 0x40, 0x23, 0x60, 0x14, 0x4C, 0x23, 0x78, 0x00, 0x2B, 0x22, 0xD0,
-0x14, 0x4B, 0x1B, 0x68, 0x5A, 0x01, 0x1E, 0xD5, 0x14, 0x49, 0x00, 0x20,
-0x02, 0xF0, 0x56, 0xFD, 0x13, 0x4B, 0x14, 0x4A, 0x19, 0x88, 0x11, 0x80,
-0x59, 0x88, 0x51, 0x80, 0x99, 0x88, 0x91, 0x80, 0xDB, 0x88, 0xD3, 0x80,
-0x10, 0x4B, 0x1B, 0x78, 0x13, 0x81, 0x23, 0x78, 0x00, 0x2B, 0x05, 0xD0,
-0x00, 0x20, 0x05, 0x21, 0x02, 0x23, 0x00, 0x90, 0x02, 0xF0, 0xE8, 0xFC,
-0x05, 0x4B, 0x0B, 0x4A, 0x19, 0x68, 0x0A, 0x40, 0x1A, 0x60, 0x13, 0xBD,
-0x0C, 0x1E, 0x00, 0x20, 0xEB, 0x01, 0x00, 0x20, 0x20, 0x59, 0x00, 0x00,
-0x58, 0x00, 0x00, 0x20, 0xFF, 0xFF, 0xFF, 0xEF, 0x27, 0x59, 0x00, 0x00,
-0x04, 0x02, 0x00, 0x20, 0x54, 0x11, 0x00, 0x20, 0xAA, 0x0A, 0x00, 0x20,
-0xFF, 0xFF, 0xFF, 0xFB, 0x10, 0xB5, 0x02, 0x28, 0x04, 0xD0, 0x03, 0x28,
-0x45, 0xD0, 0x01, 0x28, 0x33, 0xD1, 0x15, 0xE0, 0xFF, 0xF7, 0xF6, 0xF9,
-0x29, 0x4B, 0x2A, 0x4C, 0x40, 0x33, 0x1B, 0x78, 0x29, 0x49, 0x50, 0x22,
-0x23, 0x70, 0x29, 0x48, 0x04, 0xF0, 0xA6, 0xF9, 0x28, 0x4B, 0x0D, 0x20,
-0x1B, 0x68, 0x98, 0x47, 0xFF, 0xF7, 0xF4, 0xF9, 0x23, 0x78, 0x10, 0x2B,
-0x1A, 0xD1, 0x14, 0xE0, 0xFF, 0xF7, 0xE0, 0xF9, 0x1E, 0x4B, 0x1F, 0x4C,
-0x40, 0x33, 0x1B, 0x78, 0x21, 0x49, 0x50, 0x22, 0x23, 0x70, 0x1E, 0x48,
-0x04, 0xF0, 0x90, 0xF9, 0x1D, 0x4B, 0x0C, 0x20, 0x1B, 0x68, 0x98, 0x47,
-0xFF, 0xF7, 0xDE, 0xF9, 0x23, 0x78, 0x10, 0x2B, 0x04, 0xD1, 0x1B, 0x4B,
-0xDA, 0x78, 0x9A, 0x70, 0x02, 0xF0, 0xD1, 0xFA, 0x02, 0xF0, 0x54, 0xFA,
-0x20, 0xE0, 0x18, 0x4B, 0x1A, 0x78, 0x00, 0x2A, 0x05, 0xD0, 0x17, 0x4A,
-0x11, 0x68, 0x01, 0x31, 0x11, 0x60, 0x00, 0x22, 0x1A, 0x70, 0x15, 0x4B,
-0x1A, 0x68, 0x13, 0x2A, 0x05, 0xDD, 0x00, 0x22, 0x1A, 0x60, 0x0A, 0x4B,
-0x10, 0x22, 0x1A, 0x70, 0x0C, 0xE0, 0x0F, 0x4B, 0x1A, 0x68, 0x3B, 0x2A,
-0x08, 0xDD, 0x00, 0x22, 0x1A, 0x60, 0x0E, 0x4B, 0x01, 0x20, 0x1B, 0x68,
-0x98, 0x47, 0x0D, 0x4B, 0x01, 0x22, 0x1A, 0x70, 0x10, 0xBD, 0xC0, 0x46,
-0xAE, 0x09, 0x00, 0x20, 0x1D, 0x03, 0x00, 0x20, 0x4A, 0x74, 0x00, 0x00,
-0x48, 0x0D, 0x00, 0x20, 0xF8, 0x01, 0x00, 0x20, 0x9A, 0x74, 0x00, 0x00,
-0xAA, 0x0A, 0x00, 0x20, 0xC4, 0x01, 0x00, 0x20, 0xC0, 0x01, 0x00, 0x20,
-0xBC, 0x01, 0x00, 0x20, 0x6C, 0x00, 0x00, 0x20, 0xE7, 0x01, 0x00, 0x20,
-0x10, 0xB5, 0x0C, 0x4B, 0x01, 0x22, 0x99, 0x79, 0x00, 0x23, 0x00, 0xE0,
-0x23, 0x1C, 0x5C, 0x1C, 0x10, 0x1C, 0xE4, 0xB2, 0x98, 0x40, 0x81, 0x42,
-0xF8, 0xDA, 0x07, 0x4A, 0x07, 0x21, 0x13, 0x71, 0x80, 0x22, 0xD2, 0x05,
-0x0B, 0x40, 0x19, 0x02, 0x10, 0x6C, 0x04, 0x4B, 0x03, 0x40, 0x0B, 0x43,
-0x13, 0x64, 0x10, 0xBD, 0x48, 0x0D, 0x00, 0x20, 0x5C, 0x00, 0x00, 0x20,
-0xFF, 0xF8, 0xFF, 0xFF, 0x06, 0x4B, 0x07, 0x22, 0xD9, 0x79, 0x80, 0x23,
-0xDB, 0x05, 0x18, 0x6C, 0x11, 0x40, 0x04, 0x4A, 0x09, 0x02, 0x02, 0x40,
-0x0A, 0x43, 0x1A, 0x64, 0x70, 0x47, 0xC0, 0x46, 0x48, 0x0D, 0x00, 0x20,
-0xFF, 0xF8, 0xFF, 0xFF, 0xF0, 0xB5, 0x8D, 0xB0, 0x04, 0x90, 0xFF, 0xF7,
-0xC9, 0xFF, 0xC7, 0x4B, 0xC7, 0x48, 0xDE, 0x78, 0x00, 0x21, 0x05, 0x96,
-0x9C, 0x78, 0x07, 0xE0, 0x01, 0x3B, 0xDB, 0xB2, 0xEE, 0x18, 0x76, 0x00,
-0x31, 0x52, 0x00, 0x2B, 0xF8, 0xD1, 0x05, 0x92, 0x05, 0x9A, 0x05, 0x9E,
-0x01, 0x3A, 0xD2, 0xB2, 0x00, 0x2E, 0x02, 0xD0, 0x23, 0x1C, 0x55, 0x01,
-0xF3, 0xE7, 0x04, 0x9F, 0x00, 0x2F, 0x05, 0xD0, 0xBB, 0x4B, 0x05, 0x9E,
-0x5B, 0x7B, 0x06, 0x96, 0x03, 0x93, 0x04, 0xE0, 0xB9, 0x4B, 0x02, 0x27,
-0x9B, 0x78, 0x06, 0x97, 0x03, 0x93, 0x68, 0x46, 0x0C, 0x21, 0x0B, 0x56,
-0xB2, 0x4C, 0x0B, 0x93, 0x5B, 0x42, 0x09, 0x93, 0xAA, 0xE0, 0x6A, 0x46,
-0x18, 0x23, 0x9A, 0x56, 0xE6, 0x7A, 0x27, 0x1C, 0x02, 0x92, 0x0D, 0xE0,
-0x30, 0x1C, 0x00, 0x21, 0x2A, 0x1C, 0x02, 0x9B, 0x02, 0xF0, 0x4C, 0xF9,
-0x30, 0x1C, 0x01, 0x21, 0x2A, 0x1C, 0x02, 0x9B, 0x02, 0xF0, 0x46, 0xF9,
-0x01, 0x36, 0xF6, 0xB2, 0xBB, 0x7A, 0xFA, 0x7A, 0xD2, 0x18, 0x3B, 0x1C,
-0x96, 0x42, 0xEB, 0xDB, 0x04, 0x9E, 0x00, 0x2E, 0x00, 0xD1, 0x0E, 0x3D,
-0x68, 0x46, 0x18, 0x21, 0x08, 0x56, 0x5E, 0x7B, 0x9E, 0x4F, 0x02, 0x90,
-0x0D, 0xE0, 0x30, 0x1C, 0x00, 0x21, 0x2A, 0x1C, 0x02, 0x9B, 0x02, 0xF0,
-0x2D, 0xF9, 0x30, 0x1C, 0x01, 0x21, 0x2A, 0x1C, 0x02, 0x9B, 0x02, 0xF0,
-0x27, 0xF9, 0x01, 0x36, 0xF6, 0xB2, 0x7A, 0x7B, 0x3B, 0x7B, 0xD3, 0x18,
-0x9E, 0x42, 0xEC, 0xDB, 0xFF, 0xF7, 0xAE, 0xFC, 0x96, 0x4B, 0x1B, 0x78,
-0x00, 0x2B, 0x06, 0xD0, 0x01, 0x23, 0x18, 0x1C, 0x19, 0x1C, 0x0B, 0xAA,
-0x00, 0x93, 0x02, 0xF0, 0xAD, 0xFB, 0x00, 0x25, 0x8C, 0x4E, 0x90, 0x4F,
-0x0E, 0xE0, 0x3B, 0x78, 0x00, 0x2B, 0x09, 0xD0, 0x8E, 0x4B, 0xEA, 0x01,
-0xD2, 0x18, 0x00, 0x23, 0xB1, 0x78, 0x01, 0x20, 0x00, 0x93, 0x02, 0x23,
-0x02, 0xF0, 0x9C, 0xFB, 0x01, 0x35, 0xED, 0xB2, 0xF3, 0x78, 0x9D, 0x42,
-0xED, 0xD3, 0x0B, 0x9A, 0xB6, 0x78, 0xD2, 0xB2, 0x02, 0x96, 0x07, 0x92,
-0x80, 0x4D, 0x39, 0xE0, 0x01, 0x3B, 0xDB, 0xB2, 0x08, 0x9E, 0x99, 0x1C,
-0x71, 0x18, 0x82, 0x4F, 0x49, 0x00, 0xCE, 0x5B, 0xD1, 0x18, 0x48, 0x00,
-0x40, 0x5B, 0xB7, 0xB2, 0xB8, 0x42, 0x14, 0xDC, 0xC0, 0x1B, 0x01, 0x1C,
-0x80, 0x31, 0x01, 0xDA, 0x80, 0x20, 0x40, 0x42, 0xD7, 0x18, 0x7F, 0x28,
-0x00, 0xDD, 0x7F, 0x20, 0x79, 0x49, 0x78, 0x54, 0xD1, 0x18, 0x48, 0x00,
-0x2E, 0x52, 0x1C, 0x27, 0x6E, 0x46, 0x77, 0x48, 0xBE, 0x5D, 0x0E, 0x54,
-0x13, 0xE0, 0x04, 0x9E, 0x00, 0x2E, 0x10, 0xD0, 0x74, 0x4E, 0xB0, 0x42,
-0x08, 0xD0, 0x71, 0x4E, 0x8E, 0x57, 0x80, 0x19, 0x87, 0x42, 0x03, 0xDA,
-0x6F, 0x48, 0x0E, 0x5C, 0x01, 0x36, 0x0E, 0x54, 0xD1, 0x18, 0x01, 0x27,
-0x49, 0x00, 0x7F, 0x42, 0x6F, 0x52, 0x00, 0x2B, 0xC6, 0xD1, 0x63, 0x46,
-0x5E, 0x1E, 0xF6, 0xB2, 0x00, 0x2B, 0x06, 0xD0, 0x72, 0x1C, 0x92, 0x01,
-0x08, 0x92, 0x02, 0x9B, 0x72, 0x01, 0xB4, 0x46, 0xF1, 0xE7, 0x0B, 0x9B,
-0x01, 0x3B, 0x0B, 0x93, 0x0B, 0x9D, 0x09, 0x9E, 0xB5, 0x42, 0x00, 0xDB,
-0x4F, 0xE7, 0x04, 0x9F, 0x00, 0x2F, 0x45, 0xD0, 0xA0, 0x78, 0xE3, 0x78,
-0x04, 0x90, 0x61, 0x78, 0x56, 0x4A, 0x06, 0x91, 0x24, 0x78, 0x02, 0x94,
-0x11, 0x7C, 0xD0, 0x7A, 0x5B, 0x4C, 0x08, 0x18, 0xC0, 0xB2, 0x07, 0x90,
-0x12, 0x7B, 0x89, 0x18, 0xC9, 0xB2, 0x08, 0x91, 0x55, 0x4A, 0x28, 0xE0,
-0x03, 0x9E, 0x01, 0x3B, 0xDB, 0xB2, 0x00, 0x2E, 0x01, 0xD1, 0xC7, 0x18,
-0xD6, 0x55, 0x06, 0x9E, 0xB1, 0x42, 0x02, 0xD2, 0x02, 0x9F, 0xBB, 0x42,
-0x0C, 0xD3, 0xEF, 0x18, 0xC6, 0x18, 0x09, 0x97, 0x97, 0x5D, 0xBC, 0x46,
-0x09, 0x9F, 0xE7, 0x5D, 0xBC, 0x44, 0x08, 0x9F, 0xBC, 0x44, 0x67, 0x46,
-0x97, 0x55, 0x0B, 0xE0, 0xEF, 0x18, 0xC6, 0x18, 0x09, 0x97, 0x97, 0x5D,
-0xBC, 0x46, 0x09, 0x9F, 0xE7, 0x5D, 0xBC, 0x44, 0x07, 0x9F, 0xBC, 0x44,
-0x67, 0x46, 0x97, 0x55, 0x00, 0x2B, 0xD7, 0xD1, 0x0B, 0x1C, 0x59, 0x1E,
-0xC9, 0xB2, 0x00, 0x2B, 0x3E, 0xD0, 0x26, 0x25, 0x04, 0x9B, 0x48, 0x01,
-0x4D, 0x43, 0xF3, 0xE7, 0x63, 0x7C, 0xE2, 0x79, 0x07, 0x25, 0x9A, 0x18,
-0x03, 0x92, 0x34, 0x4A, 0xA0, 0x7B, 0x02, 0x21, 0x52, 0x5E, 0x26, 0x79,
-0xAD, 0x1A, 0x6D, 0x00, 0x86, 0x19, 0xED, 0xB2, 0x34, 0x49, 0x84, 0x46,
-0x09, 0xE0, 0xB8, 0x18, 0x44, 0x5C, 0x01, 0x32, 0x2C, 0x19, 0x44, 0x54,
-0xD2, 0xB2, 0xB2, 0x42, 0xF7, 0xDB, 0x01, 0x33, 0xDB, 0xB2, 0x03, 0x9A,
-0x93, 0x42, 0x02, 0xDA, 0x62, 0x46, 0x5F, 0x01, 0xF5, 0xE7, 0x23, 0x4A,
-0x2A, 0x49, 0x10, 0x7C, 0xD3, 0x7B, 0x56, 0x79, 0x95, 0x79, 0x9E, 0x19,
-0x45, 0x19, 0x84, 0x46, 0x09, 0xE0, 0xB8, 0x18, 0x44, 0x5C, 0x01, 0x32,
-0x0E, 0x3C, 0x44, 0x54, 0xD2, 0xB2, 0xAA, 0x42, 0xF7, 0xDB, 0x01, 0x33,
-0xDB, 0xB2, 0xB3, 0x42, 0x02, 0xDA, 0x62, 0x46, 0x5F, 0x01, 0xF6, 0xE7,
-0x1A, 0x4B, 0x1B, 0x78, 0x00, 0x2B, 0x13, 0xD0, 0x05, 0x20, 0x1F, 0x49,
-0x02, 0xF0, 0x10, 0xFB, 0x0E, 0xE0, 0x2B, 0x78, 0x00, 0x2B, 0x08, 0xD0,
-0x18, 0x4B, 0x72, 0x01, 0xA1, 0x78, 0xD2, 0x18, 0x05, 0x20, 0x01, 0x23,
-0x00, 0x93, 0x02, 0xF0, 0xAB, 0xFA, 0x01, 0x36, 0xF6, 0xB2, 0x02, 0xE0,
-0x0A, 0x4C, 0x0E, 0x4D, 0x05, 0x9E, 0xE3, 0x78, 0xB3, 0x42, 0xEA, 0xD8,
-0x00, 0x21, 0x01, 0x20, 0x0A, 0x1C, 0x40, 0x42, 0x02, 0x23, 0x02, 0xF0,
-0x01, 0xF8, 0x01, 0x20, 0x40, 0x42, 0x01, 0x21, 0x00, 0x22, 0x02, 0x23,
-0x01, 0xF0, 0xFA, 0xFF, 0xA4, 0x78, 0x25, 0xE0, 0x0A, 0x03, 0x00, 0x20,
-0xF8, 0x03, 0x00, 0x20, 0x48, 0x0D, 0x00, 0x20, 0x04, 0x02, 0x00, 0x20,
-0xEB, 0x01, 0x00, 0x20, 0x84, 0x40, 0x00, 0x40, 0x00, 0x40, 0x00, 0x40,
-0x64, 0x0E, 0x00, 0x20, 0xB3, 0x0A, 0x00, 0x20, 0xFF, 0xFF, 0x00, 0x00,
-0x36, 0x75, 0x00, 0x00, 0x2E, 0x59, 0x00, 0x00, 0x01, 0x3C, 0x00, 0x21,
-0xE4, 0xB2, 0x0A, 0x1C, 0x20, 0x1C, 0x01, 0x23, 0x01, 0xF0, 0xD8, 0xFF,
-0x01, 0x21, 0x20, 0x1C, 0x00, 0x22, 0x0B, 0x1C, 0x01, 0xF0, 0xD2, 0xFF,
-0x00, 0x2C, 0xEF, 0xD1, 0xFF, 0xF7, 0x30, 0xFE, 0x0D, 0xB0, 0xF0, 0xBD,
-0x08, 0xB5, 0x03, 0xF0, 0xC5, 0xFD, 0x05, 0x4B, 0x01, 0x20, 0x1B, 0x68,
-0x98, 0x47, 0x01, 0x20, 0x04, 0xF0, 0x22, 0xF9, 0x01, 0xF0, 0xD6, 0xFD,
-0x08, 0xBD, 0xC0, 0x46, 0xF8, 0x01, 0x00, 0x20, 0xF7, 0xB5, 0x2C, 0x4A,
-0x00, 0x20, 0x10, 0x60, 0x2B, 0x4A, 0x2C, 0x4E, 0x11, 0x8C, 0x2C, 0x4A,
-0x11, 0x60, 0x72, 0x1D, 0xD2, 0x7F, 0xF1, 0x7D, 0x50, 0x1E, 0x44, 0x42,
-0x60, 0x41, 0x29, 0x4C, 0x08, 0x1A, 0x00, 0x90, 0x20, 0x60, 0xB0, 0x1D,
-0xC5, 0x7F, 0x37, 0x7E, 0x6B, 0x1E, 0x58, 0x42, 0x58, 0x41, 0x3B, 0x1A,
-0x01, 0x93, 0x63, 0x60, 0x01, 0x2A, 0x02, 0xD1, 0x00, 0x20, 0x20, 0x81,
-0x05, 0xE0, 0x26, 0x23, 0xF0, 0x5E, 0x49, 0x00, 0x03, 0xF0, 0xBA, 0xFE,
-0x20, 0x81, 0x01, 0x2D, 0x02, 0xD1, 0x00, 0x23, 0x63, 0x81, 0x05, 0xE0,
-0x28, 0x23, 0xF0, 0x5E, 0x79, 0x00, 0x03, 0xF0, 0xAF, 0xFE, 0x60, 0x81,
-0x15, 0x4F, 0x01, 0x9B, 0x28, 0x20, 0x3E, 0x5E, 0x59, 0x00, 0x70, 0x00,
-0x80, 0x19, 0x03, 0xF0, 0xA5, 0xFE, 0x40, 0x43, 0x12, 0x4C, 0x43, 0x00,
-0x80, 0x00, 0xE3, 0x60, 0xC3, 0x18, 0x23, 0x61, 0x26, 0x20, 0x3D, 0x5E,
-0x00, 0x9B, 0x68, 0x00, 0x59, 0x00, 0x40, 0x19, 0x03, 0xF0, 0x96, 0xFE,
-0x2C, 0x37, 0x60, 0x61, 0xA0, 0x61, 0x3B, 0x78, 0x00, 0x2B, 0x02, 0xD1,
-0xE6, 0x61, 0x25, 0x62, 0x01, 0xE0, 0xE5, 0x61, 0x26, 0x62, 0x07, 0x4B,
-0x01, 0x22, 0x52, 0x42, 0x5A, 0x60, 0xF7, 0xBD, 0x9C, 0x0D, 0x00, 0x20,
-0x48, 0x0D, 0x00, 0x20, 0xAE, 0x09, 0x00, 0x20, 0x20, 0x02, 0x00, 0x20,
-0x24, 0x09, 0x00, 0x20, 0xCC, 0x00, 0x00, 0x20, 0xF0, 0xB5, 0x24, 0x4B,
-0x87, 0xB0, 0x1E, 0x7E, 0xDB, 0x7D, 0x72, 0x1C, 0xD9, 0x1C, 0x02, 0x33,
-0x03, 0x93, 0x05, 0x92, 0x00, 0x23, 0x20, 0x4A, 0x04, 0x91, 0x18, 0x1C,
-0x05, 0x9C, 0xE5, 0x1A, 0xEF, 0x01, 0x01, 0x97, 0xBC, 0x5A, 0xB8, 0x52,
-0x04, 0x9C, 0xAD, 0x01, 0x29, 0x19, 0x4F, 0x00, 0xBC, 0x5A, 0x1A, 0x4C,
-0xB8, 0x52, 0x00, 0x27, 0x2F, 0x55, 0x0F, 0x55, 0x01, 0x99, 0x18, 0x4F,
-0x01, 0x33, 0xCF, 0x19, 0x02, 0x97, 0x39, 0x88, 0x38, 0x80, 0x03, 0x99,
-0x6F, 0x18, 0x79, 0x00, 0x01, 0x91, 0x89, 0x5A, 0x01, 0x99, 0x88, 0x52,
-0x12, 0x49, 0x6D, 0x18, 0x00, 0x21, 0x29, 0x70, 0x39, 0x55, 0xF7, 0x1A,
-0x0C, 0x4D, 0x01, 0x37, 0xD8, 0xDA, 0x00, 0x22, 0x01, 0x36, 0x03, 0x9B,
-0x11, 0x1C, 0xB6, 0x01, 0x58, 0x00, 0x2F, 0x5A, 0x2A, 0x52, 0xF0, 0x18,
-0x47, 0x00, 0xEC, 0x5B, 0xEA, 0x53, 0x06, 0x4F, 0xF9, 0x54, 0x01, 0x3B,
-0x39, 0x54, 0x01, 0x2B, 0xF2, 0xD1, 0x07, 0xB0, 0xF0, 0xBD, 0xC0, 0x46,
-0xAE, 0x09, 0x00, 0x20, 0x00, 0x40, 0x00, 0x40, 0x00, 0x20, 0x00, 0x40,
-0x02, 0x40, 0x00, 0x40, 0x01, 0x20, 0x00, 0x40, 0xF7, 0xB5, 0x0D, 0x4B,
-0x19, 0x7E, 0xDE, 0x7D, 0x48, 0x1C, 0x01, 0x36, 0x00, 0x23, 0x01, 0x90,
-0x01, 0x9C, 0x32, 0x1C, 0xE7, 0x1A, 0xBF, 0x01, 0x95, 0x1C, 0xAC, 0x46,
-0xBC, 0x44, 0x07, 0x4C, 0x00, 0x25, 0x60, 0x46, 0x01, 0x3A, 0x05, 0x55,
-0x50, 0x1C, 0xF5, 0xDA, 0x01, 0x33, 0xCA, 0x1A, 0x01, 0x32, 0xED, 0xDA,
-0xF7, 0xBD, 0xC0, 0x46, 0xAE, 0x09, 0x00, 0x20, 0x00, 0x20, 0x00, 0x40,
-0x00, 0xB5, 0x0D, 0x4B, 0x08, 0x22, 0x9B, 0x5E, 0x0C, 0x4A, 0x11, 0x1C,
-0x35, 0x31, 0x09, 0x78, 0x12, 0x7F, 0x4B, 0x43, 0x52, 0xB2, 0x9B, 0x11,
-0x93, 0x42, 0x00, 0xDA, 0x13, 0x1C, 0x08, 0x4A, 0x13, 0x60, 0x80, 0x22,
-0xD2, 0x05, 0x1B, 0x05, 0x19, 0x09, 0x90, 0x69, 0x05, 0x4B, 0x03, 0x40,
-0x0B, 0x43, 0x93, 0x61, 0x00, 0xBD, 0xC0, 0x46, 0x70, 0x01, 0x00, 0x20,
-0x48, 0x0D, 0x00, 0x20, 0x38, 0x0D, 0x00, 0x20, 0xFF, 0xFF, 0x00, 0xF0,
-0xF0, 0xB5, 0xA9, 0x4A, 0xA9, 0x48, 0x11, 0x68, 0x07, 0x68, 0x93, 0xB0,
-0x8C, 0x46, 0x0D, 0x22, 0x00, 0x21, 0x7F, 0x25, 0xFF, 0x24, 0x01, 0x97,
-0x90, 0x00, 0x83, 0x18, 0xA4, 0x4E, 0x5B, 0x00, 0xF3, 0x18, 0x99, 0x87,
-0x00, 0x27, 0x38, 0x33, 0x1F, 0x72, 0x67, 0x46, 0x39, 0x50, 0x01, 0x3A,
-0x01, 0x9F, 0xD2, 0xB2, 0x39, 0x50, 0x00, 0x26, 0xDD, 0x72, 0x5D, 0x72,
-0x1C, 0x73, 0x9C, 0x72, 0xD9, 0x80, 0xFF, 0x2A, 0xE8, 0xD1, 0x9B, 0x4A,
-0x9B, 0x4B, 0x11, 0x7E, 0x98, 0x68, 0x9B, 0x4C, 0x97, 0x4D, 0x01, 0x39,
-0x04, 0x90, 0xA6, 0x81, 0x2E, 0x60, 0x88, 0x42, 0x02, 0xDA, 0x01, 0x30,
-0x04, 0x90, 0x98, 0x60, 0xDE, 0x68, 0x11, 0x96, 0x00, 0x2E, 0x02, 0xDD,
-0x01, 0x3E, 0x11, 0x96, 0xDE, 0x60, 0xD1, 0x7D, 0x1A, 0x68, 0x01, 0x39,
-0x8A, 0x42, 0x01, 0xDA, 0x01, 0x32, 0x1A, 0x60, 0x5A, 0x68, 0x00, 0x2A,
-0x01, 0xDD, 0x01, 0x3A, 0x5A, 0x60, 0x04, 0x9F, 0x11, 0x98, 0x87, 0x42,
-0x00, 0xDA, 0xA3, 0xE0, 0x19, 0x68, 0x5B, 0x68, 0x84, 0x4A, 0x06, 0x93,
-0x88, 0x4B, 0x12, 0x68, 0x1B, 0x68, 0x86, 0x4C, 0x0D, 0x93, 0x80, 0x4B,
-0x10, 0x91, 0x1B, 0x68, 0x09, 0x92, 0x0A, 0x93, 0xA4, 0x89, 0x84, 0x48,
-0x0C, 0x94, 0x06, 0x9D, 0x10, 0x9E, 0xB5, 0x42, 0x00, 0xDD, 0x81, 0xE0,
-0x04, 0x9A, 0x6F, 0x46, 0x10, 0x21, 0x01, 0x32, 0xCF, 0x5D, 0x92, 0x01,
-0x33, 0x1C, 0x02, 0x92, 0x07, 0x97, 0x05, 0xE0, 0x00, 0x27, 0x2F, 0x54,
-0x06, 0x9F, 0x01, 0x3B, 0x9F, 0x42, 0x71, 0xDC, 0x02, 0x99, 0x9C, 0x1C,
-0x0D, 0x19, 0x2A, 0x5C, 0x77, 0x4E, 0x69, 0x00, 0x89, 0x5B, 0x0E, 0x2A,
-0xF0, 0xD8, 0x0D, 0x9D, 0x49, 0x1B, 0x00, 0x2A, 0x00, 0xD1, 0x71, 0xE0,
-0x01, 0x3A, 0xD4, 0xB2, 0x09, 0x9E, 0x04, 0x9F, 0xA2, 0x00, 0xB5, 0x18,
-0x4F, 0x43, 0x2E, 0x68, 0xB4, 0x46, 0x67, 0x44, 0x2F, 0x60, 0x0A, 0x9D,
-0x0E, 0x1C, 0xAF, 0x18, 0x3D, 0x68, 0x5E, 0x43, 0xAC, 0x46, 0x15, 0x19,
-0x6D, 0x00, 0x01, 0x95, 0x62, 0x4D, 0x66, 0x44, 0xAC, 0x46, 0x01, 0x9D,
-0x3E, 0x60, 0xAC, 0x44, 0x65, 0x46, 0xAF, 0x8F, 0x38, 0x35, 0x2E, 0x7A,
-0xCF, 0x19, 0x03, 0x96, 0x09, 0x26, 0xAE, 0x57, 0xAF, 0x80, 0x01, 0x96,
-0x0C, 0x9E, 0x6F, 0x46, 0xB4, 0x46, 0x01, 0x26, 0xB4, 0x44, 0x03, 0x9E,
-0x01, 0x36, 0x03, 0x96, 0x66, 0x46, 0xB6, 0xB2, 0x0C, 0x96, 0x0C, 0x26,
-0xF7, 0x5D, 0x04, 0x9E, 0x2F, 0x72, 0x01, 0x9F, 0xBE, 0x42, 0x00, 0xDA,
-0x6E, 0x72, 0x51, 0x4E, 0x15, 0x19, 0x6D, 0x00, 0x75, 0x19, 0x38, 0x35,
-0x0A, 0x26, 0xAE, 0x57, 0x04, 0x9F, 0xB7, 0x42, 0x00, 0xDD, 0xAF, 0x72,
-0x4B, 0x4E, 0x15, 0x19, 0x6D, 0x00, 0x75, 0x19, 0x38, 0x35, 0x0B, 0x26,
-0xAE, 0x57, 0xB3, 0x42, 0x00, 0xDA, 0xEB, 0x72, 0x15, 0x19, 0x46, 0x4F,
-0x6D, 0x00, 0x7D, 0x19, 0x38, 0x35, 0x0C, 0x26, 0xAE, 0x57, 0xB3, 0x42,
-0x00, 0xDD, 0x2B, 0x73, 0x12, 0x19, 0x41, 0x4C, 0x52, 0x00, 0xA2, 0x18,
-0x3E, 0x25, 0x54, 0x5F, 0x38, 0x32, 0xA1, 0x42, 0x8E, 0xDD, 0x06, 0x9F,
-0x01, 0x3B, 0xD1, 0x80, 0x9F, 0x42, 0x8D, 0xDD, 0x04, 0x99, 0x11, 0x9A,
-0x01, 0x39, 0x04, 0x91, 0x91, 0x42, 0x00, 0xDB, 0x71, 0xE7, 0x6B, 0x46,
-0x30, 0x24, 0xE4, 0x5A, 0x38, 0x4B, 0x9C, 0x81, 0x13, 0xB0, 0xF0, 0xBD,
-0x02, 0x39, 0xCA, 0x43, 0xD2, 0x17, 0x11, 0x40, 0x03, 0x91, 0x04, 0x9E,
-0x03, 0x9F, 0x71, 0x43, 0x5F, 0x43, 0x0E, 0x91, 0x00, 0x25, 0xD9, 0xB2,
-0x0F, 0x97, 0x05, 0x91, 0x03, 0x22, 0x01, 0x95, 0x9C, 0x46, 0x08, 0x94,
-0x31, 0x4E, 0x32, 0x4F, 0x07, 0x9C, 0xB1, 0x5C, 0x05, 0x9D, 0xBB, 0x5C,
-0x61, 0x18, 0xEB, 0x18, 0x49, 0xB2, 0x01, 0x31, 0x5B, 0xB2, 0x89, 0x01,
-0x02, 0x33, 0xCB, 0x18, 0x1C, 0x5C, 0x65, 0xB2, 0x69, 0x1E, 0x0D, 0x29,
-0x27, 0xD8, 0x08, 0x9B, 0x02, 0x9F, 0x8E, 0x00, 0xFF, 0x18, 0x0B, 0x97,
-0x09, 0x9F, 0x71, 0x18, 0xBB, 0x19, 0x0A, 0x9F, 0x49, 0x00, 0xBF, 0x19,
-0x1B, 0x4E, 0x00, 0x97, 0x01, 0x9F, 0x71, 0x18, 0x38, 0x31, 0x00, 0x2F,
-0x1A, 0xD1, 0xE4, 0xB2, 0x01, 0x94, 0x0B, 0x9D, 0x0E, 0x34, 0xE4, 0xB2,
-0x2C, 0x54, 0x1C, 0x68, 0x0E, 0x9E, 0x00, 0x9F, 0xA4, 0x19, 0x1C, 0x60,
-0x3B, 0x68, 0x0F, 0x9C, 0x03, 0x9D, 0x1B, 0x19, 0x3B, 0x60, 0x8C, 0x88,
-0x0B, 0x7A, 0x2C, 0x19, 0x01, 0x33, 0x8C, 0x80, 0x0B, 0x72, 0x53, 0x1E,
-0x00, 0x2A, 0x10, 0xD0, 0xDA, 0xB2, 0xBF, 0xE7, 0x02, 0x9E, 0x08, 0x99,
-0x01, 0x9C, 0x73, 0x18, 0x1F, 0x2C, 0xF4, 0xD0, 0xAC, 0x42, 0xF2, 0xD0,
-0x1F, 0x25, 0x1F, 0x26, 0x1D, 0x54, 0x01, 0x96, 0x53, 0x1E, 0x00, 0x2A,
-0xEE, 0xD1, 0x63, 0x46, 0x18, 0xE7, 0xC0, 0x46, 0x44, 0x00, 0x00, 0x20,
-0x48, 0x00, 0x00, 0x20, 0x24, 0x02, 0x00, 0x20, 0xAE, 0x09, 0x00, 0x20,
-0xE4, 0x10, 0x00, 0x20, 0x70, 0x01, 0x00, 0x20, 0x38, 0x0D, 0x00, 0x20,
-0x00, 0x20, 0x00, 0x40, 0x00, 0x40, 0x00, 0x40, 0xF8, 0x59, 0x00, 0x00,
-0xF4, 0x59, 0x00, 0x00, 0xF0, 0xB5, 0x89, 0xB0, 0x0F, 0x23, 0x46, 0x49,
-0xFF, 0x22, 0x02, 0xE0, 0x58, 0x18, 0x01, 0x38, 0x02, 0x70, 0x01, 0x3B,
-0x00, 0x2B, 0xF9, 0xD1, 0x42, 0x4B, 0xD8, 0x68, 0x19, 0x68, 0x9A, 0x68,
-0x5B, 0x68, 0x01, 0x90, 0x03, 0x93, 0x40, 0x4B, 0x02, 0x91, 0x1B, 0x68,
-0x04, 0x93, 0x3F, 0x4B, 0x5B, 0x7F, 0x06, 0x93, 0x68, 0xE0, 0x07, 0x9B,
-0x88, 0x1C, 0x3D, 0x4A, 0x18, 0x18, 0x83, 0x5C, 0x5B, 0xB2, 0x1F, 0x2B,
-0x5A, 0xD1, 0x3B, 0x4A, 0x40, 0x00, 0x82, 0x5A, 0x04, 0x9D, 0x04, 0x20,
-0x52, 0x1B, 0x05, 0x92, 0x38, 0x4A, 0x01, 0x38, 0xC0, 0xB2, 0x14, 0x56,
-0x37, 0x4A, 0x64, 0x44, 0x12, 0x56, 0x01, 0x34, 0x8A, 0x18, 0xA4, 0x01,
-0x02, 0x32, 0x31, 0x4E, 0xA2, 0x18, 0xB4, 0x5C, 0x0E, 0x2C, 0x41, 0xD8,
-0x1F, 0x2B, 0x3E, 0xD0, 0xA3, 0x42, 0x3D, 0xD0, 0x00, 0x2C, 0x3B, 0xD0,
-0x0A, 0x27, 0x5D, 0x1E, 0x7D, 0x43, 0x2E, 0x4A, 0x2D, 0x4E, 0x55, 0x19,
-0x62, 0x1E, 0x7A, 0x43, 0xB2, 0x18, 0x3E, 0x27, 0xEE, 0x5F, 0x3E, 0x27,
-0xD5, 0x5F, 0x1A, 0x1C, 0xAE, 0x42, 0x00, 0xDD, 0x22, 0x1C, 0x0A, 0x25,
-0x01, 0x3A, 0x6A, 0x43, 0x25, 0x4E, 0x06, 0x9D, 0xB2, 0x18, 0x3E, 0x27,
-0xD2, 0x5F, 0x05, 0x9E, 0x6A, 0x43, 0x92, 0x11, 0x96, 0x42, 0x1D, 0xDD,
-0x9C, 0x42, 0x02, 0xD9, 0x1A, 0x1C, 0x23, 0x1C, 0x14, 0x1C, 0x5E, 0x1E,
-0x15, 0x4A, 0xF6, 0xB2, 0x97, 0x5D, 0x00, 0x25, 0x00, 0x97, 0x6F, 0x46,
-0x7D, 0x57, 0x01, 0x3C, 0xE4, 0xB2, 0x6F, 0x1C, 0x09, 0xD0, 0xA5, 0x42,
-0x03, 0xDA, 0x6D, 0x46, 0x2D, 0x78, 0x15, 0x55, 0x06, 0xE0, 0xA5, 0x42,
-0x04, 0xDD, 0xE4, 0xB2, 0x54, 0x55, 0x94, 0x55, 0x00, 0xE0, 0x23, 0x1C,
-0x00, 0x28, 0xAB, 0xD1, 0x01, 0x39, 0x03, 0x9E, 0xB1, 0x42, 0x98, 0xDA,
-0x62, 0x46, 0x01, 0x3A, 0x01, 0x9F, 0xBA, 0x42, 0x05, 0xDB, 0x53, 0x1C,
-0x9B, 0x01, 0x02, 0x99, 0x07, 0x93, 0x94, 0x46, 0xF1, 0xE7, 0x09, 0xB0,
-0xF0, 0xBD, 0xC0, 0x46, 0xEC, 0x02, 0x00, 0x20, 0xE4, 0x10, 0x00, 0x20,
-0x38, 0x0D, 0x00, 0x20, 0x48, 0x0D, 0x00, 0x20, 0x00, 0x20, 0x00, 0x40,
-0x00, 0x40, 0x00, 0x40, 0xF8, 0x59, 0x00, 0x00, 0xF4, 0x59, 0x00, 0x00,
-0x24, 0x02, 0x00, 0x20, 0xF0, 0xB5, 0xD4, 0x4A, 0x8D, 0xB0, 0x11, 0x68,
-0x00, 0x23, 0xD0, 0x18, 0xBE, 0x30, 0x00, 0x24, 0x00, 0x5F, 0x0A, 0x3B,
-0x44, 0x1E, 0xA0, 0x41, 0x1D, 0x1C, 0x09, 0x18, 0x8C, 0x35, 0xF4, 0xD1,
-0xCD, 0x4B, 0x11, 0x60, 0x1B, 0x68, 0xBE, 0x32, 0x03, 0x93, 0xCC, 0x4B,
-0x0E, 0x24, 0x1B, 0x68, 0x05, 0x93, 0xCB, 0x4E, 0x01, 0x3C, 0x33, 0x57,
-0x5F, 0x1C, 0x01, 0xD1, 0x73, 0xE0, 0x03, 0x1C, 0xC7, 0x4D, 0xE8, 0x56,
-0x46, 0x1C, 0xFA, 0xD1, 0x2B, 0x55, 0x5F, 0x1C, 0x6B, 0xD0, 0x03, 0x98,
-0x9D, 0x00, 0x46, 0x19, 0x37, 0x68, 0xA0, 0x00, 0xBC, 0x46, 0x03, 0x9F,
-0x3F, 0x58, 0xBC, 0x44, 0x67, 0x46, 0x37, 0x60, 0x05, 0x9E, 0x05, 0x9F,
-0x75, 0x19, 0x2E, 0x68, 0x38, 0x58, 0xB9, 0x4F, 0x30, 0x18, 0x0A, 0x26,
-0x28, 0x60, 0x30, 0x1C, 0x58, 0x43, 0x38, 0x18, 0x38, 0x30, 0x09, 0x27,
-0xC7, 0x57, 0x55, 0x79, 0xBC, 0x46, 0x6F, 0xB2, 0xBC, 0x45, 0x00, 0xDD,
-0x45, 0x72, 0x5E, 0x43, 0xB0, 0x4D, 0x90, 0x79, 0xAE, 0x19, 0x38, 0x36,
-0x0A, 0x27, 0xF7, 0x57, 0x45, 0xB2, 0xAF, 0x42, 0x00, 0xDA, 0xB0, 0x72,
-0xD6, 0x79, 0xAB, 0x4F, 0x06, 0x96, 0x0A, 0x26, 0x30, 0x1C, 0x58, 0x43,
-0x38, 0x18, 0x38, 0x30, 0x0B, 0x25, 0x45, 0x57, 0xAC, 0x46, 0x6D, 0x46,
-0x18, 0x35, 0x2D, 0x78, 0x6D, 0xB2, 0xAC, 0x45, 0x03, 0xDD, 0x6F, 0x46,
-0x18, 0x25, 0xEF, 0x5D, 0xC7, 0x72, 0x5E, 0x43, 0xA0, 0x4D, 0x10, 0x7A,
-0xAF, 0x19, 0x38, 0x37, 0x0C, 0x26, 0xBE, 0x57, 0x45, 0xB2, 0xAE, 0x42,
-0x00, 0xDA, 0x38, 0x73, 0x0A, 0x20, 0x58, 0x43, 0x56, 0x88, 0x9A, 0x4F,
-0x06, 0x96, 0x38, 0x18, 0x3E, 0x26, 0x85, 0x5F, 0x18, 0x26, 0xAC, 0x46,
-0x6D, 0x46, 0x75, 0x5F, 0x38, 0x30, 0x0A, 0x26, 0xAC, 0x45, 0x03, 0xDA,
-0x6F, 0x46, 0x18, 0x25, 0xEF, 0x5B, 0xC7, 0x80, 0x5E, 0x43, 0x91, 0x48,
-0x01, 0x39, 0x87, 0x19, 0xBB, 0x8F, 0x10, 0x88, 0xC3, 0x18, 0xBB, 0x87,
-0x38, 0x37, 0x10, 0x79, 0x3B, 0x7A, 0xC3, 0x18, 0x3B, 0x72, 0x0A, 0x3A,
-0x00, 0x2C, 0x00, 0xD0, 0x81, 0xE7, 0x89, 0x4F, 0x26, 0x1C, 0x3D, 0x1C,
-0x3C, 0x35, 0x03, 0x95, 0x39, 0x60, 0x25, 0x1C, 0x88, 0x48, 0x00, 0x22,
-0x33, 0x18, 0x9A, 0x56, 0x01, 0x32, 0x19, 0xD1, 0x1D, 0x70, 0xB5, 0x42,
-0x12, 0xD0, 0x82, 0x4B, 0xB1, 0x00, 0x1A, 0x68, 0xAB, 0x00, 0x50, 0x58,
-0xD0, 0x50, 0x80, 0x4A, 0x7D, 0x48, 0x12, 0x68, 0x51, 0x58, 0xD1, 0x50,
-0x0A, 0x22, 0x13, 0x1C, 0x6B, 0x43, 0xC0, 0x18, 0x3C, 0x30, 0x03, 0x99,
-0x03, 0xF0, 0x7E, 0xFB, 0x3B, 0x68, 0x01, 0x35, 0x9D, 0x42, 0x05, 0xDA,
-0x03, 0x99, 0x01, 0x36, 0x0A, 0x31, 0x03, 0x91, 0x0E, 0x2E, 0xD9, 0xD1,
-0x76, 0x4B, 0x1B, 0x68, 0xDA, 0x06, 0x3B, 0xD5, 0x75, 0x4B, 0x1B, 0x78,
-0x00, 0x2B, 0x03, 0xD0, 0x04, 0x20, 0x74, 0x49, 0x01, 0xF0, 0xD4, 0xFE,
-0x00, 0x25, 0x73, 0x4E, 0x2C, 0xE0, 0x69, 0x1C, 0x89, 0x01, 0x33, 0x68,
-0x77, 0x68, 0x71, 0x4A, 0x03, 0x91, 0xA4, 0x46, 0x12, 0xE0, 0x03, 0x9C,
-0x99, 0x1C, 0x61, 0x18, 0x88, 0x5C, 0x40, 0xB2, 0x44, 0x1E, 0x0D, 0x2C,
-0x09, 0xD8, 0x66, 0x4C, 0x20, 0x18, 0x01, 0x38, 0x00, 0x78, 0x40, 0xB2,
-0x44, 0x1C, 0x02, 0xD0, 0x01, 0x30, 0xC0, 0xB2, 0x88, 0x54, 0x01, 0x3B,
-0xBB, 0x42, 0xEA, 0xDA, 0x61, 0x4B, 0x64, 0x46, 0x1B, 0x78, 0x00, 0x2B,
-0x09, 0xD0, 0x63, 0x4B, 0x63, 0x4F, 0xAA, 0x01, 0xD9, 0x7D, 0xD2, 0x19,
-0x01, 0x23, 0x04, 0x20, 0x00, 0x93, 0x01, 0xF0, 0x4D, 0xFE, 0x01, 0x35,
-0x5D, 0x4F, 0x3B, 0x7E, 0x9D, 0x42, 0xCE, 0xDB, 0x5D, 0x4B, 0x1B, 0x68,
-0x00, 0x2B, 0x10, 0xDD, 0x5C, 0x4B, 0x5D, 0x4A, 0x99, 0x89, 0x11, 0x80,
-0x1B, 0x89, 0x53, 0x80, 0x52, 0x4B, 0x1B, 0x78, 0x00, 0x2B, 0x06, 0xD0,
-0x01, 0x23, 0x02, 0x21, 0x00, 0x93, 0x17, 0x20, 0x0B, 0x1C, 0x01, 0xF0,
-0x33, 0xFE, 0x48, 0x4B, 0x55, 0x48, 0x1D, 0x1C, 0x40, 0xCD, 0x4F, 0x49,
-0x07, 0x96, 0x47, 0x89, 0x08, 0x97, 0x0A, 0x8D, 0x47, 0x68, 0x16, 0xB2,
-0x05, 0x96, 0x86, 0x69, 0x09, 0x97, 0xB7, 0xB2, 0xD2, 0x1B, 0x04, 0x97,
-0x92, 0xB2, 0x31, 0x31, 0x09, 0x78, 0x0A, 0x92, 0x3E, 0x4A, 0x00, 0x20,
-0x06, 0x91, 0x17, 0x68, 0x03, 0x90, 0x2F, 0xE0, 0x03, 0x9A, 0x0A, 0x23,
-0x53, 0x43, 0x01, 0xCF, 0x05, 0x99, 0x48, 0x43, 0x37, 0x49, 0xCB, 0x18,
-0x3C, 0x22, 0x99, 0x5E, 0x09, 0x9B, 0x59, 0x43, 0x03, 0xF0, 0x94, 0xFA,
-0x08, 0x99, 0x42, 0x4A, 0x08, 0x18, 0x13, 0x78, 0x80, 0xB2, 0x28, 0x80,
-0x00, 0x2B, 0x15, 0xD1, 0x00, 0xB2, 0xB0, 0x42, 0x07, 0xDA, 0x06, 0x9B,
-0x80, 0x1B, 0x58, 0x43, 0x04, 0x99, 0x80, 0x11, 0x08, 0x18, 0x28, 0x80,
-0x0A, 0xE0, 0x05, 0x9A, 0x10, 0x1A, 0xB0, 0x42, 0x06, 0xDA, 0x06, 0x9B,
-0x80, 0x1B, 0x58, 0x43, 0x0A, 0x99, 0x80, 0x11, 0x08, 0x1A, 0x28, 0x80,
-0x03, 0x9A, 0x02, 0x35, 0x01, 0x32, 0x03, 0x92, 0x03, 0x9B, 0x07, 0x98,
-0x83, 0x42, 0xCB, 0xDB, 0x20, 0x4D, 0x2E, 0x49, 0x2D, 0x68, 0x28, 0x4A,
-0x05, 0x95, 0x0E, 0x89, 0x0D, 0x68, 0x07, 0x96, 0xD3, 0x8C, 0x08, 0x95,
-0x4D, 0x69, 0x1F, 0xB2, 0xAE, 0xB2, 0x11, 0x1C, 0x04, 0x97, 0x06, 0x96,
-0x2F, 0x31, 0x09, 0x78, 0x9B, 0x1B, 0x9B, 0xB2, 0x09, 0x91, 0x30, 0x32,
-0x12, 0x78, 0x15, 0x4E, 0x0B, 0x93, 0x16, 0x4B, 0x00, 0x20, 0x0A, 0x92,
-0x1F, 0x68, 0x20, 0x36, 0x03, 0x90, 0x50, 0xE0, 0x03, 0x9A, 0x0A, 0x23,
-0x53, 0x43, 0x01, 0xCF, 0x04, 0x99, 0x48, 0x43, 0x0D, 0x49, 0x5B, 0x18,
-0x3C, 0x22, 0x99, 0x5E, 0x08, 0x9B, 0x59, 0x43, 0x03, 0xF0, 0x40, 0xFA,
-0x07, 0x99, 0x18, 0x4A, 0x08, 0x18, 0x13, 0x78, 0x80, 0xB2, 0x30, 0x80,
-0x00, 0x2B, 0x36, 0xD1, 0x00, 0xB2, 0xA8, 0x42, 0x28, 0xDA, 0x09, 0x9B,
-0x40, 0x1B, 0x58, 0x43, 0x06, 0x99, 0x80, 0x11, 0x08, 0x18, 0x30, 0x80,
-0x2B, 0xE0, 0xC0, 0x46, 0x24, 0x02, 0x00, 0x20, 0x48, 0x00, 0x00, 0x20,
-0x44, 0x00, 0x00, 0x20, 0xEC, 0x02, 0x00, 0x20, 0x58, 0x00, 0x00, 0x20,
-0xEB, 0x01, 0x00, 0x20, 0x64, 0x59, 0x00, 0x00, 0xE4, 0x10, 0x00, 0x20,
-0x00, 0x20, 0x00, 0x40, 0xAE, 0x09, 0x00, 0x20, 0x42, 0x20, 0x00, 0x40,
-0x9C, 0x0D, 0x00, 0x20, 0x70, 0x01, 0x00, 0x20, 0x54, 0x11, 0x00, 0x20,
-0x24, 0x09, 0x00, 0x20, 0xDF, 0x01, 0x00, 0x20, 0x04, 0x9A, 0x10, 0x1A,
-0xA8, 0x42, 0x06, 0xDA, 0x0A, 0x9B, 0x40, 0x1B, 0x58, 0x43, 0x0B, 0x99,
-0x80, 0x11, 0x08, 0x1A, 0x30, 0x80, 0x03, 0x9A, 0x02, 0x36, 0x01, 0x32,
-0x03, 0x92, 0x03, 0x9B, 0x05, 0x98, 0x83, 0x42, 0xAA, 0xDB, 0x1B, 0x4B,
-0x1A, 0x1C, 0x2A, 0x32, 0x17, 0x78, 0x1A, 0x1C, 0x2B, 0x32, 0x12, 0x78,
-0x28, 0x21, 0x5E, 0x5E, 0x03, 0x92, 0x26, 0x25, 0x5A, 0x5F, 0x2C, 0x33,
-0x04, 0x92, 0x1B, 0x78, 0x14, 0x49, 0x06, 0x93, 0x00, 0x25, 0xB4, 0x46,
-0x1D, 0xE0, 0x00, 0x26, 0x8B, 0x5F, 0x00, 0x2B, 0x16, 0xD0, 0x11, 0x4A,
-0xA8, 0x18, 0x04, 0x23, 0xC2, 0x5E, 0x20, 0x26, 0x83, 0x5F, 0x00, 0x2F,
-0x01, 0xD0, 0x66, 0x46, 0xB2, 0x1A, 0x03, 0x9E, 0x00, 0x2E, 0x01, 0xD0,
-0x04, 0x9E, 0xF3, 0x1A, 0x06, 0x9E, 0x00, 0x2E, 0x02, 0xD0, 0x16, 0x1C,
-0x1A, 0x1C, 0x33, 0x1C, 0x82, 0x80, 0x03, 0x84, 0x01, 0x34, 0x0A, 0x31,
-0x02, 0x35, 0x05, 0x9E, 0xB4, 0x42, 0xDE, 0xDB, 0x0D, 0xB0, 0xF0, 0xBD,
-0xAE, 0x09, 0x00, 0x20, 0x60, 0x02, 0x00, 0x20, 0x24, 0x02, 0x00, 0x20,
-0x30, 0xB5, 0x0A, 0x4B, 0x00, 0x21, 0x04, 0x33, 0xDB, 0x7F, 0x09, 0x4A,
-0x0A, 0x24, 0x08, 0x1C, 0x07, 0xE0, 0x01, 0x3B, 0xDB, 0xB2, 0x25, 0x1C,
-0x5D, 0x43, 0x55, 0x19, 0xA9, 0x87, 0x05, 0x4D, 0xE8, 0x54, 0x00, 0x2B,
-0xF5, 0xD1, 0x13, 0x60, 0x30, 0xBD, 0xC0, 0x46, 0xAE, 0x09, 0x00, 0x20,
-0x9C, 0x0D, 0x00, 0x20, 0x64, 0x01, 0x00, 0x20, 0x00, 0xB5, 0x08, 0x4A,
-0x01, 0x23, 0x5B, 0x42, 0x53, 0x60, 0x07, 0x4B, 0x00, 0x21, 0x11, 0x60,
-0x1B, 0x78, 0x04, 0xE0, 0x01, 0x3B, 0xDB, 0xB2, 0x18, 0x1D, 0x40, 0x00,
-0x81, 0x52, 0x00, 0x2B, 0xF8, 0xD1, 0x00, 0xBD, 0xE0, 0x00, 0x00, 0x20,
-0x7C, 0x09, 0x00, 0x20, 0x49, 0x43, 0x40, 0x43, 0x40, 0x18, 0x70, 0x47,
-0x70, 0x47, 0xF0, 0xB5, 0x83, 0x4B, 0x00, 0x22, 0x04, 0x33, 0xD9, 0x7F,
-0x87, 0xB0, 0x0B, 0x1C, 0x81, 0x48, 0x0A, 0x26, 0x15, 0x1C, 0x07, 0xE0,
-0x01, 0x3B, 0xDB, 0xB2, 0x34, 0x1C, 0x5C, 0x43, 0x04, 0x19, 0xA2, 0x87,
-0x38, 0x34, 0x25, 0x72, 0x04, 0x1C, 0x00, 0x2B, 0xF4, 0xD1, 0x7B, 0x4B,
-0x1A, 0x68, 0x0B, 0x1C, 0x91, 0x42, 0x00, 0xDD, 0x13, 0x1C, 0x23, 0x60,
-0x78, 0x48, 0x79, 0x4A, 0x79, 0x4B, 0x0E, 0x24, 0xFF, 0x21, 0x01, 0x3C,
-0xE4, 0xB2, 0xA5, 0x00, 0x01, 0x55, 0xAB, 0x50, 0x00, 0x2C, 0xF8, 0xD1,
-0x6F, 0x4B, 0x25, 0x1C, 0x04, 0x33, 0xDB, 0x7F, 0x26, 0x1C, 0x03, 0x93,
-0x72, 0x4B, 0x1B, 0x69, 0x04, 0x93, 0x6D, 0x4B, 0x1B, 0x68, 0x05, 0x93,
-0x47, 0xE0, 0x70, 0x4C, 0x63, 0x5D, 0x00, 0x2B, 0x42, 0xD0, 0x6F, 0x4C,
-0xAB, 0x00, 0xE3, 0x58, 0x04, 0x9C, 0x1B, 0x01, 0x1B, 0x19, 0x01, 0x93,
-0x6C, 0x4B, 0x6A, 0x00, 0x01, 0x27, 0xD3, 0x18, 0x00, 0x24, 0x7F, 0x42,
-0x02, 0x93, 0x20, 0xE0, 0x0A, 0x23, 0x63, 0x43, 0x60, 0x48, 0xC3, 0x18,
-0x3C, 0x21, 0x5B, 0x5E, 0x00, 0x2B, 0x16, 0xD0, 0x02, 0x9A, 0x63, 0x00,
-0xC3, 0x18, 0x98, 0x88, 0x93, 0x88, 0x5B, 0x4A, 0xC0, 0x1A, 0x23, 0x1C,
-0x10, 0x33, 0x5B, 0x00, 0x99, 0x5A, 0x02, 0x9A, 0x00, 0xB2, 0x13, 0x8B,
-0xC9, 0x1A, 0x09, 0xB2, 0xFF, 0xF7, 0x98, 0xFF, 0x01, 0x9B, 0x98, 0x42,
-0x01, 0xDA, 0x27, 0x1C, 0x01, 0x90, 0x01, 0x34, 0xE4, 0xB2, 0x05, 0x98,
-0x84, 0x42, 0xDB, 0xDB, 0x79, 0x1C, 0x0D, 0xD0, 0x4F, 0x4B, 0x50, 0x49,
-0xD8, 0x57, 0xBA, 0x00, 0x01, 0x30, 0x04, 0xD0, 0x88, 0x58, 0x01, 0x9C,
-0xA0, 0x42, 0x03, 0xDD, 0x00, 0xE0, 0x01, 0x9C, 0x8C, 0x50, 0xDD, 0x55,
-0x01, 0x35, 0x03, 0x9C, 0xEB, 0xB2, 0xA3, 0x42, 0xB3, 0xD3, 0x34, 0x1C,
-0x00, 0x25, 0x44, 0x4E, 0x28, 0xE0, 0x44, 0x48, 0x47, 0x5D, 0x7B, 0xB2,
-0x01, 0x33, 0x21, 0xD0, 0x69, 0x00, 0xFF, 0xB2, 0x3E, 0x4B, 0x71, 0x18,
-0x89, 0x88, 0x7A, 0x00, 0x9A, 0x18, 0x91, 0x80, 0x29, 0x1C, 0x10, 0x31,
-0x3A, 0x1C, 0x49, 0x00, 0x89, 0x5B, 0x10, 0x32, 0x52, 0x00, 0xD1, 0x52,
-0x0A, 0x22, 0x10, 0x1C, 0x78, 0x43, 0x11, 0x1C, 0x69, 0x43, 0x1B, 0x18,
-0x18, 0x1C, 0x71, 0x18, 0x3C, 0x30, 0x3C, 0x31, 0x03, 0xF0, 0x40, 0xF9,
-0x34, 0x4B, 0xAA, 0x00, 0xD2, 0x58, 0x37, 0x4B, 0xBF, 0x00, 0xFA, 0x50,
-0x01, 0x35, 0xED, 0xB2, 0x33, 0x68, 0x9D, 0x42, 0xD3, 0xDB, 0x3D, 0xE0,
-0x2D, 0x4E, 0x33, 0x57, 0x01, 0x33, 0x36, 0xD1, 0x0A, 0x23, 0x63, 0x43,
-0xEB, 0x18, 0x3C, 0x20, 0x1B, 0x5E, 0x00, 0x2B, 0x2F, 0xD0, 0x25, 0x4B,
-0x2E, 0x4A, 0x04, 0x33, 0xDF, 0x7F, 0x00, 0x23, 0x26, 0xE0, 0x29, 0x4E,
-0xF6, 0x5C, 0x00, 0x2E, 0x20, 0xD1, 0x00, 0x26, 0x90, 0x5F, 0x00, 0x28,
-0x1C, 0xD1, 0x21, 0x4A, 0x67, 0x00, 0x11, 0x55, 0x1E, 0x49, 0x1D, 0x48,
-0xCF, 0x19, 0xBF, 0x88, 0x5A, 0x00, 0x82, 0x18, 0x97, 0x80, 0x27, 0x1C,
-0x10, 0x37, 0x1A, 0x1C, 0x7F, 0x00, 0x7F, 0x5A, 0x10, 0x32, 0x52, 0x00,
-0x17, 0x52, 0x0A, 0x22, 0x53, 0x43, 0xC0, 0x18, 0x13, 0x1C, 0x63, 0x43,
-0xC9, 0x18, 0x3C, 0x31, 0x3C, 0x30, 0x03, 0xF0, 0xFF, 0xF8, 0x04, 0xE0,
-0x01, 0x33, 0x0A, 0x32, 0xD9, 0xB2, 0xB9, 0x42, 0xD5, 0xD3, 0x01, 0x34,
-0xE4, 0xB2, 0x00, 0xE0, 0x0D, 0x4D, 0x2B, 0x68, 0x9C, 0x42, 0xBD, 0xDB,
-0x09, 0x4B, 0x0C, 0x49, 0x04, 0x33, 0xDD, 0x7F, 0x12, 0x4B, 0xFF, 0x20,
-0x1C, 0x1C, 0x0E, 0x34, 0x1A, 0x78, 0xAA, 0x42, 0x02, 0xD2, 0x8A, 0x5C,
-0x1A, 0x70, 0x00, 0xE0, 0x18, 0x70, 0x01, 0x33, 0xA3, 0x42, 0xF5, 0xD1,
-0x07, 0xB0, 0xF0, 0xBD, 0xAE, 0x09, 0x00, 0x20, 0x9C, 0x0D, 0x00, 0x20,
-0x24, 0x02, 0x00, 0x20, 0xE8, 0x03, 0x00, 0x20, 0xF8, 0x10, 0x00, 0x20,
-0xFF, 0xFF, 0xFF, 0x7F, 0x24, 0x09, 0x00, 0x20, 0xEC, 0x01, 0x00, 0x20,
-0xF8, 0x00, 0x00, 0x20, 0x80, 0x09, 0x00, 0x20, 0xD8, 0x0D, 0x00, 0x20,
-0xEC, 0x02, 0x00, 0x20, 0xF7, 0xB5, 0x42, 0x4B, 0x00, 0x21, 0x19, 0x60,
-0x41, 0x4B, 0x0A, 0x24, 0x19, 0x60, 0x41, 0x4B, 0x08, 0x1C, 0x04, 0x33,
-0xDB, 0x7F, 0x40, 0x4D, 0x1A, 0x1C, 0xA4, 0x46, 0x11, 0xE0, 0x01, 0x3A,
-0xD2, 0xB2, 0x26, 0x1C, 0x56, 0x43, 0xAE, 0x19, 0x38, 0x36, 0x36, 0x7A,
-0xB0, 0x42, 0x00, 0xDA, 0x30, 0x1C, 0x66, 0x46, 0x56, 0x43, 0xAE, 0x19,
-0x3C, 0x27, 0xF6, 0x5F, 0xB1, 0x42, 0x00, 0xDA, 0x31, 0x1C, 0x00, 0x2A,
-0xEB, 0xD1, 0x32, 0x4A, 0x50, 0x60, 0x11, 0x60, 0x2F, 0x4A, 0x0A, 0x20,
-0x11, 0x68, 0x31, 0x4A, 0x07, 0xE0, 0x01, 0x3B, 0xDB, 0xB2, 0x04, 0x1C,
-0x5C, 0x43, 0x14, 0x19, 0x38, 0x34, 0x24, 0x7A, 0x09, 0x19, 0x14, 0x1C,
-0x00, 0x2B, 0xF4, 0xD1, 0x27, 0x4B, 0x19, 0x60, 0x13, 0x68, 0x00, 0x2B,
-0x0F, 0xDD, 0x26, 0x4B, 0x28, 0x4A, 0x5B, 0x68, 0x11, 0x80, 0x53, 0x80,
-0x27, 0x4B, 0x1B, 0x78, 0x00, 0x2B, 0x06, 0xD0, 0x01, 0x23, 0x02, 0x21,
-0x00, 0x93, 0x1D, 0x20, 0x0B, 0x1C, 0x01, 0xF0, 0x8F, 0xFB, 0x23, 0x68,
-0x00, 0x2B, 0x19, 0xDD, 0x21, 0x4A, 0x08, 0x23, 0xD1, 0x5E, 0x21, 0x4B,
-0x0C, 0x24, 0x12, 0x5F, 0x18, 0x1C, 0x3D, 0x33, 0x1B, 0x78, 0x3C, 0x30,
-0x53, 0x43, 0x00, 0x78, 0x9B, 0x11, 0xC3, 0x18, 0x99, 0x42, 0x09, 0xDC,
-0x18, 0x4B, 0x1B, 0x78, 0x00, 0x2B, 0x03, 0xD0, 0x00, 0x20, 0x19, 0x49,
-0x01, 0xF0, 0xCC, 0xFB, 0xFF, 0xF7, 0x40, 0xFE, 0x11, 0x4B, 0x17, 0x4A,
-0x1B, 0x68, 0x12, 0x78, 0x93, 0x42, 0x12, 0xDB, 0x0B, 0x4B, 0x12, 0x4A,
-0x18, 0x68, 0xD1, 0x8E, 0x0A, 0x4B, 0x88, 0x42, 0x03, 0xDB, 0x11, 0x8F,
-0x58, 0x68, 0x88, 0x42, 0x03, 0xDA, 0x52, 0x8F, 0x5B, 0x68, 0x93, 0x42,
-0x07, 0xDB, 0x0E, 0x4B, 0x01, 0x22, 0x1A, 0x70, 0x03, 0xE0, 0x00, 0x2B,
-0x01, 0xD1, 0x0B, 0x4A, 0x13, 0x70, 0xF7, 0xBD, 0x4C, 0x11, 0x00, 0x20,
-0x0C, 0x02, 0x00, 0x20, 0xAE, 0x09, 0x00, 0x20, 0x9C, 0x0D, 0x00, 0x20,
-0x54, 0x11, 0x00, 0x20, 0xEB, 0x01, 0x00, 0x20, 0x70, 0x01, 0x00, 0x20,
-0x48, 0x0D, 0x00, 0x20, 0x6C, 0x59, 0x00, 0x00, 0x40, 0x00, 0x00, 0x20,
-0xF5, 0x00, 0x00, 0x20, 0x38, 0xB5, 0x04, 0x1C, 0x08, 0x1C, 0x00, 0x2A,
-0x07, 0xD0, 0x54, 0x43, 0x58, 0x43, 0xD1, 0x18, 0x20, 0x18, 0x4D, 0x10,
-0x40, 0x19, 0x02, 0xF0, 0xBB, 0xFF, 0x38, 0xBD, 0x10, 0xB5, 0x43, 0x1A,
-0xDC, 0x17, 0x1B, 0x19, 0x63, 0x40, 0xFF, 0xF7, 0xEB, 0xFF, 0x10, 0xBD,
-0xF0, 0xB5, 0xA9, 0x4B, 0x00, 0x25, 0x04, 0x33, 0x87, 0xB0, 0xDC, 0x7F,
-0x2E, 0x1C, 0x46, 0xE0, 0x01, 0x3C, 0xE4, 0xB2, 0x0A, 0x22, 0x62, 0x43,
-0x99, 0x18, 0x38, 0x31, 0x88, 0x88, 0x00, 0x28, 0x3D, 0xD0, 0xA2, 0x4F,
-0x3F, 0x5D, 0x00, 0x2F, 0x2A, 0xD1, 0xA1, 0x49, 0x09, 0x78, 0x00, 0x29,
-0x07, 0xD0, 0x9A, 0x18, 0x01, 0x21, 0x3C, 0x32, 0x1D, 0x20, 0x02, 0x23,
-0x00, 0x91, 0x01, 0xF0, 0x07, 0xFB, 0x0A, 0x20, 0x60, 0x43, 0x9B, 0x4B,
-0x9B, 0x49, 0x18, 0x18, 0x3C, 0x27, 0xC2, 0x5F, 0x38, 0x30, 0x94, 0x46,
-0x26, 0x27, 0xCA, 0x5F, 0x1F, 0x1C, 0x94, 0x45, 0x08, 0xDB, 0x4E, 0x31,
-0x0A, 0x78, 0x96, 0x49, 0x00, 0x7A, 0x49, 0x68, 0x4A, 0x43, 0x92, 0x11,
-0x90, 0x42, 0x16, 0xDA, 0x0A, 0x22, 0x62, 0x43, 0xBA, 0x18, 0xD5, 0x87,
-0x38, 0x32, 0x16, 0x72, 0x95, 0x80, 0x08, 0xE0, 0x8D, 0x4A, 0x00, 0xB2,
-0x28, 0x27, 0xD2, 0x5F, 0x82, 0x42, 0x08, 0xDD, 0xCD, 0x80, 0x0E, 0x72,
-0x8D, 0x80, 0x8B, 0x4A, 0xA1, 0x00, 0x8D, 0x50, 0x1A, 0x68, 0x01, 0x3A,
-0x1A, 0x60, 0x85, 0x4B, 0x00, 0x2C, 0xB5, 0xD1, 0x1C, 0x60, 0x87, 0x4B,
-0x9C, 0x73, 0x7F, 0x4B, 0x04, 0x33, 0xDC, 0x7F, 0xC7, 0xE0, 0x01, 0x3C,
-0xE4, 0xB2, 0x0A, 0x23, 0x63, 0x43, 0xED, 0x18, 0xAA, 0x8F, 0x38, 0x35,
-0x00, 0x2A, 0x00, 0xD1, 0x93, 0xE0, 0x7C, 0x4B, 0x12, 0xB2, 0x1B, 0x8D,
-0x19, 0xB2, 0x52, 0x1A, 0x52, 0x10, 0x5B, 0x00, 0xD3, 0x18, 0xAB, 0x80,
-0x7A, 0x4B, 0x9A, 0x7B, 0x00, 0x2A, 0x0D, 0xD1, 0x79, 0x4A, 0x12, 0x57,
-0x00, 0x2A, 0x09, 0xD1, 0x78, 0x4A, 0x01, 0x21, 0x11, 0x70, 0x80, 0x22,
-0xD2, 0x05, 0x50, 0x69, 0x00, 0x0E, 0x00, 0x06, 0x01, 0x43, 0x51, 0x61,
-0x01, 0x22, 0x9A, 0x73, 0x73, 0x4E, 0x71, 0x4B, 0x1A, 0x57, 0x33, 0x78,
-0x9A, 0x42, 0x70, 0xDB, 0x6F, 0x4B, 0x1A, 0x78, 0x00, 0x2A, 0x01, 0xD0,
-0x00, 0x22, 0x1A, 0x70, 0x66, 0x4D, 0x62, 0x00, 0x2B, 0x68, 0x01, 0x33,
-0x2B, 0x60, 0xAB, 0x18, 0x04, 0x27, 0xD9, 0x5F, 0x6A, 0x4B, 0x9A, 0x18,
-0x04, 0x26, 0x90, 0x5F, 0x22, 0x1C, 0x10, 0x32, 0x52, 0x00, 0x57, 0x5F,
-0x03, 0x97, 0xD7, 0x5E, 0x0A, 0x1A, 0xD3, 0x17, 0x03, 0x9E, 0xD2, 0x18,
-0x5A, 0x40, 0xF3, 0x1B, 0xDE, 0x17, 0x9B, 0x19, 0x73, 0x40, 0xD3, 0x18,
-0x04, 0x93, 0x59, 0x4B, 0x2E, 0x22, 0x9E, 0x5E, 0x04, 0x9B, 0x32, 0x1C,
-0x05, 0x96, 0xFF, 0xF7, 0x39, 0xFF, 0x05, 0x9A, 0x04, 0x9B, 0x06, 0x1C,
-0x03, 0x99, 0x38, 0x1C, 0xFF, 0xF7, 0x32, 0xFF, 0x4D, 0x4A, 0x13, 0x1C,
-0x2D, 0x33, 0x1B, 0x78, 0x2A, 0x1C, 0x5B, 0xB2, 0x9E, 0x42, 0x07, 0xDD,
-0x55, 0x49, 0xC9, 0x69, 0xCF, 0x1A, 0xBE, 0x42, 0x03, 0xDB, 0x4E, 0x1E,
-0xF6, 0x1A, 0x00, 0xE0, 0x1E, 0x1C, 0x45, 0x4B, 0x2E, 0x33, 0x1B, 0x78,
-0x5B, 0xB2, 0x98, 0x42, 0x07, 0xDD, 0x4E, 0x49, 0x09, 0x6A, 0xCF, 0x1A,
-0xB8, 0x42, 0x03, 0xDB, 0x48, 0x1E, 0xC0, 0x1A, 0x00, 0xE0, 0x18, 0x1C,
-0x63, 0x00, 0xD3, 0x18, 0x9E, 0x80, 0x23, 0x1C, 0x10, 0x33, 0x5B, 0x00,
-0xE8, 0x52, 0x0A, 0x25, 0x65, 0x43, 0x3D, 0x4B, 0x43, 0x4E, 0x30, 0x20,
-0x1F, 0x5E, 0x76, 0x19, 0x55, 0x19, 0x3C, 0x21, 0x70, 0x5E, 0x3C, 0x22,
-0xA9, 0x5E, 0x3A, 0x1C, 0xFF, 0xF7, 0x0A, 0xFF, 0x38, 0x36, 0xA8, 0x87,
-0x38, 0x35, 0x30, 0x7A, 0x29, 0x7A, 0x3A, 0x1C, 0xFF, 0xF7, 0x02, 0xFF,
-0x28, 0x72, 0x31, 0x4B, 0x62, 0x00, 0x99, 0x18, 0x37, 0x48, 0x89, 0x88,
-0x82, 0x18, 0x91, 0x80, 0x22, 0x1C, 0x10, 0x32, 0x52, 0x00, 0xD1, 0x5A,
-0x11, 0x52, 0x0A, 0x22, 0x11, 0x1C, 0x61, 0x43, 0x40, 0x18, 0x59, 0x18,
-0x0D, 0x1C, 0x3C, 0x30, 0x3C, 0x31, 0x02, 0xF0, 0x07, 0xFF, 0x3C, 0x23,
-0xEA, 0x5E, 0x38, 0x35, 0x29, 0x4B, 0x00, 0x2A, 0x0C, 0xD0, 0x24, 0x49,
-0x1A, 0x5D, 0x32, 0x31, 0x09, 0x78, 0x50, 0xB2, 0x88, 0x42, 0x06, 0xDA,
-0x01, 0x32, 0x1A, 0x55, 0x01, 0x23, 0x5B, 0x42, 0xAB, 0x80, 0x00, 0xE0,
-0x1A, 0x55, 0x1C, 0x4D, 0x00, 0x2C, 0x00, 0xD0, 0x33, 0xE7, 0x22, 0x4E,
-0x29, 0x68, 0x32, 0x68, 0x22, 0x4B, 0x91, 0x42, 0x25, 0xDA, 0x19, 0x68,
-0x17, 0x48, 0x01, 0x31, 0x19, 0x60, 0x3E, 0x30, 0x00, 0x78, 0x40, 0xB2,
-0x81, 0x42, 0x1C, 0xDA, 0x0F, 0x4B, 0x2A, 0x60, 0x04, 0x33, 0xDC, 0x7F,
-0x14, 0xE0, 0x01, 0x3C, 0xE4, 0xB2, 0x63, 0x00, 0xF2, 0x18, 0x92, 0x88,
-0xEB, 0x18, 0x9A, 0x80, 0x23, 0x1C, 0x10, 0x33, 0x5B, 0x00, 0x9A, 0x5B,
-0x5A, 0x53, 0x0A, 0x22, 0x11, 0x1C, 0x61, 0x43, 0x68, 0x18, 0x71, 0x18,
-0x3C, 0x30, 0x3C, 0x31, 0x02, 0xF0, 0xC6, 0xFE, 0x00, 0x2C, 0xE8, 0xD1,
-0x00, 0xE0, 0x1C, 0x60, 0x07, 0xB0, 0xF0, 0xBD, 0xAE, 0x09, 0x00, 0x20,
-0xEC, 0x01, 0x00, 0x20, 0xEB, 0x01, 0x00, 0x20, 0x9C, 0x0D, 0x00, 0x20,
-0x48, 0x0D, 0x00, 0x20, 0x0C, 0x02, 0x00, 0x20, 0xF8, 0x00, 0x00, 0x20,
-0x70, 0x01, 0x00, 0x20, 0x3E, 0x11, 0x00, 0x20, 0xE2, 0x01, 0x00, 0x20,
-0x7A, 0x0D, 0x00, 0x20, 0x20, 0x03, 0x00, 0x20, 0x24, 0x09, 0x00, 0x20,
-0x60, 0x01, 0x00, 0x20, 0xF0, 0xB5, 0x31, 0x4B, 0x31, 0x4D, 0x1E, 0x78,
-0x31, 0x4B, 0x00, 0x27, 0x1A, 0x1C, 0x2F, 0x60, 0x2B, 0x32, 0x12, 0x78,
-0x89, 0xB0, 0x04, 0x92, 0x50, 0x00, 0x1A, 0x1C, 0x06, 0x90, 0x32, 0x32,
-0x12, 0x78, 0x07, 0x92, 0x30, 0x22, 0x99, 0x5E, 0x6B, 0x68, 0x05, 0x91,
-0x02, 0x93, 0x03, 0x97, 0x42, 0xE0, 0x01, 0x3E, 0xF6, 0xB2, 0x33, 0x1D,
-0x5B, 0x00, 0x01, 0x93, 0xEB, 0x5A, 0x00, 0x2B, 0x34, 0xD0, 0x04, 0x98,
-0x1B, 0xB2, 0x1B, 0x1A, 0x06, 0x99, 0x5B, 0x10, 0xCB, 0x18, 0x01, 0x9A,
-0x20, 0x48, 0x9B, 0xB2, 0xAB, 0x52, 0xF2, 0x00, 0x81, 0x58, 0x84, 0x18,
-0x07, 0x98, 0x1B, 0xB2, 0x81, 0x42, 0x07, 0xDA, 0x1B, 0x48, 0x01, 0x31,
-0x81, 0x50, 0x01, 0x99, 0x00, 0x22, 0x63, 0x60, 0x6A, 0x52, 0x21, 0xE0,
-0x60, 0x68, 0x01, 0x37, 0x1A, 0x1A, 0xD1, 0x17, 0x84, 0x46, 0x50, 0x18,
-0x05, 0x9A, 0x48, 0x40, 0x11, 0x18, 0x00, 0x90, 0x60, 0x46, 0x42, 0x43,
-0x94, 0x46, 0x00, 0x9A, 0x53, 0x43, 0x62, 0x46, 0xD0, 0x18, 0x4B, 0x10,
-0xC0, 0x18, 0x02, 0xF0, 0xF3, 0xFD, 0x01, 0x9B, 0x03, 0x99, 0x60, 0x60,
-0xE8, 0x52, 0x81, 0x42, 0x04, 0xDB, 0x05, 0xE0, 0x09, 0x48, 0xF2, 0x00,
-0x83, 0x50, 0x01, 0xE0, 0x02, 0x96, 0x03, 0x90, 0x00, 0x2E, 0xBA, 0xD1,
-0x02, 0x99, 0x09, 0xB0, 0x2F, 0x60, 0x69, 0x60, 0xF0, 0xBD, 0xC0, 0x46,
-0x7C, 0x09, 0x00, 0x20, 0xE0, 0x00, 0x00, 0x20, 0x48, 0x0D, 0x00, 0x20,
-0x48, 0x09, 0x00, 0x20, 0xF7, 0xB5, 0x27, 0x4B, 0x27, 0x49, 0x04, 0x33,
-0xDB, 0x7F, 0x27, 0x4A, 0x27, 0x48, 0x42, 0xE0, 0x01, 0x3B, 0xDB, 0xB2,
-0x1C, 0x1C, 0x14, 0x34, 0x64, 0x00, 0x04, 0x19, 0x04, 0x25, 0x64, 0x5F,
-0x00, 0x2C, 0x27, 0xD0, 0x0A, 0x24, 0x5C, 0x43, 0x0C, 0x19, 0x3C, 0x26,
-0xA4, 0x5F, 0x00, 0x2C, 0x20, 0xD0, 0x5C, 0x00, 0x0E, 0x19, 0xB6, 0x88,
-0x05, 0x19, 0x37, 0xB2, 0xBC, 0x46, 0x04, 0x27, 0xEF, 0x5F, 0x65, 0x46,
-0xED, 0x1B, 0x6F, 0x10, 0xBE, 0x19, 0x14, 0x19, 0xA6, 0x80, 0x1C, 0x1C,
-0x10, 0x34, 0x64, 0x00, 0x0E, 0x5B, 0x1C, 0x1C, 0x0C, 0x34, 0x37, 0xB2,
-0x64, 0x00, 0xBC, 0x46, 0x25, 0x5E, 0x67, 0x46, 0x7F, 0x1B, 0x7F, 0x10,
-0xBE, 0x19, 0xA6, 0x52, 0x10, 0x4C, 0x01, 0x26, 0xE6, 0x54, 0x10, 0xE0,
-0x0B, 0x4D, 0x5C, 0x00, 0x2E, 0x19, 0xB6, 0x88, 0x14, 0x19, 0xA6, 0x80,
-0x1E, 0x1C, 0x10, 0x36, 0x1C, 0x1C, 0x76, 0x00, 0x76, 0x5B, 0x0C, 0x34,
-0x64, 0x00, 0x16, 0x53, 0x07, 0x4C, 0x00, 0x26, 0xE6, 0x54, 0x00, 0x2B,
-0xBA, 0xD1, 0x0B, 0x68, 0x13, 0x60, 0xF7, 0xBD, 0xAE, 0x09, 0x00, 0x20,
-0x9C, 0x0D, 0x00, 0x20, 0x80, 0x09, 0x00, 0x20, 0x20, 0x01, 0x00, 0x20,
-0xEC, 0x01, 0x00, 0x20, 0xF7, 0xB5, 0x35, 0x4A, 0x35, 0x4B, 0x11, 0x1C,
-0x33, 0x31, 0x34, 0x32, 0x0E, 0x78, 0x12, 0x78, 0x04, 0x33, 0xDB, 0x7F,
-0x32, 0x49, 0x01, 0x92, 0xB4, 0x46, 0x32, 0x4A, 0x4B, 0xE0, 0x32, 0x48,
-0x01, 0x3B, 0xDB, 0xB2, 0xC4, 0x5C, 0x01, 0x98, 0x00, 0x2C, 0x00, 0xD1,
-0x60, 0x46, 0x5E, 0x00, 0x8D, 0x19, 0x96, 0x19, 0x04, 0x27, 0xF6, 0x5F,
-0xAD, 0x88, 0x00, 0x96, 0x00, 0x9F, 0x2E, 0xB2, 0xBE, 0x1B, 0xF7, 0x17,
-0xF6, 0x19, 0x7E, 0x40, 0x86, 0x42, 0x10, 0xDA, 0x1E, 0x1C, 0x0C, 0x36,
-0x76, 0x00, 0xB6, 0x5E, 0x1F, 0x1C, 0x10, 0x37, 0x00, 0x96, 0x7F, 0x00,
-0xCF, 0x5F, 0x00, 0x9E, 0xF7, 0x1B, 0xFE, 0x17, 0xBF, 0x19, 0x77, 0x40,
-0x00, 0x97, 0x87, 0x42, 0x18, 0xDB, 0x58, 0x00, 0x10, 0x18, 0x1E, 0x1C,
-0x85, 0x80, 0x10, 0x36, 0x19, 0x4D, 0x18, 0x1C, 0x76, 0x00, 0x0C, 0x30,
-0x75, 0x5B, 0x40, 0x00, 0x15, 0x52, 0x18, 0x1C, 0x14, 0x30, 0x40, 0x00,
-0x10, 0x18, 0x04, 0x27, 0xC0, 0x5F, 0x00, 0x28, 0x04, 0xDD, 0x00, 0x2C,
-0x02, 0xD1, 0x13, 0x48, 0x01, 0x24, 0xC4, 0x54, 0x0A, 0x24, 0x5C, 0x43,
-0x0E, 0x4D, 0x18, 0x1C, 0x2C, 0x19, 0x14, 0x30, 0x0D, 0x4D, 0x40, 0x00,
-0xA4, 0x8F, 0x28, 0x18, 0x84, 0x80, 0x00, 0x2B, 0xB1, 0xD1, 0x0A, 0x68,
-0x09, 0x4B, 0x0B, 0x49, 0x1A, 0x60, 0x0B, 0x4B, 0x1A, 0x78, 0x0B, 0x4B,
-0x1A, 0x70, 0x0B, 0x4A, 0x0B, 0x1C, 0x31, 0xCA, 0x31, 0xC3, 0xC0, 0xCA,
-0xC0, 0xC3, 0xF7, 0xBD, 0x48, 0x0D, 0x00, 0x20, 0xAE, 0x09, 0x00, 0x20,
-0x9C, 0x0D, 0x00, 0x20, 0x20, 0x01, 0x00, 0x20, 0x64, 0x01, 0x00, 0x20,
-0xCC, 0x00, 0x00, 0x20, 0xF5, 0x00, 0x00, 0x20, 0xF4, 0x00, 0x00, 0x20,
-0xE0, 0x00, 0x00, 0x20, 0xF7, 0xB5, 0x19, 0x48, 0x01, 0x23, 0x5B, 0x42,
-0x43, 0x60, 0x18, 0x4B, 0x1A, 0x78, 0x18, 0x4B, 0x19, 0x1C, 0x2B, 0x33,
-0x1E, 0x78, 0x2A, 0x31, 0x0F, 0x78, 0x00, 0x23, 0xB4, 0x46, 0x1E, 0xE0,
-0x01, 0x3A, 0xD2, 0xB2, 0x13, 0x4C, 0x51, 0x00, 0x61, 0x5A, 0x0E, 0xB2,
-0xF6, 0x43, 0xF6, 0x17, 0x0E, 0x40, 0x11, 0x1D, 0x49, 0x00, 0xB5, 0xB2,
-0x0E, 0x52, 0x00, 0x2D, 0x0F, 0xD0, 0x0E, 0x4E, 0x2D, 0xB2, 0x8E, 0x5F,
-0x00, 0x2E, 0x04, 0xDC, 0xBD, 0x42, 0x07, 0xDA, 0x00, 0x25, 0x0D, 0x52,
-0x05, 0xE0, 0x65, 0x45, 0x02, 0xDA, 0x00, 0x26, 0x0E, 0x52, 0x00, 0xE0,
-0x01, 0x33, 0x00, 0x2A, 0xDE, 0xD1, 0x01, 0x4A, 0x13, 0x60, 0xF7, 0xBD,
-0xE0, 0x00, 0x00, 0x20, 0x7C, 0x09, 0x00, 0x20, 0x48, 0x0D, 0x00, 0x20,
-0x3C, 0x0D, 0x00, 0x20, 0xCC, 0x00, 0x00, 0x20, 0xEF, 0xF3, 0x08, 0x80,
-0x70, 0x47, 0x00, 0xBA, 0x70, 0x47, 0x40, 0xBA, 0x70, 0x47, 0xC0, 0xBA,
-0x70, 0x47, 0x70, 0xB5, 0x00, 0x28, 0x16, 0xDA, 0xC0, 0xB2, 0x0F, 0x23,
-0x03, 0x40, 0x08, 0x3B, 0x12, 0x4A, 0x9B, 0x08, 0x9B, 0x00, 0x9B, 0x18,
-0x03, 0x22, 0x10, 0x40, 0x90, 0x40, 0xFF, 0x22, 0x5D, 0x68, 0x14, 0x1C,
-0x84, 0x40, 0x89, 0x01, 0xA5, 0x43, 0x0A, 0x40, 0x82, 0x40, 0x28, 0x1C,
-0x10, 0x43, 0x58, 0x60, 0x11, 0xE0, 0x03, 0x24, 0x82, 0x08, 0x09, 0x4B,
-0x20, 0x40, 0xC0, 0x32, 0xA0, 0x40, 0x92, 0x00, 0xFF, 0x24, 0xD5, 0x58,
-0x26, 0x1C, 0x86, 0x40, 0x89, 0x01, 0xB5, 0x43, 0x0C, 0x40, 0x84, 0x40,
-0x28, 0x1C, 0x20, 0x43, 0xD0, 0x50, 0x70, 0xBD, 0x18, 0xED, 0x00, 0xE0,
-0x00, 0xE1, 0x00, 0xE0, 0x08, 0x4B, 0x40, 0x22, 0x19, 0x68, 0x7F, 0x20,
-0x49, 0x06, 0x49, 0x0E, 0x11, 0x43, 0x1A, 0x68, 0x82, 0x43, 0x0A, 0x43,
-0x1A, 0x60, 0x1A, 0x68, 0x80, 0x23, 0xDB, 0x05, 0x19, 0x69, 0x1A, 0x61,
-0x70, 0x47, 0xC0, 0x46, 0x08, 0x00, 0x00, 0x20, 0x07, 0x4B, 0x3F, 0x22,
-0x19, 0x68, 0x7F, 0x20, 0x11, 0x40, 0x1A, 0x68, 0x82, 0x43, 0x0A, 0x43,
-0x1A, 0x60, 0x1A, 0x68, 0x80, 0x23, 0xDB, 0x05, 0x19, 0x69, 0x1A, 0x61,
-0x70, 0x47, 0xC0, 0x46, 0x08, 0x00, 0x00, 0x20, 0x07, 0x4B, 0x08, 0x4A,
-0x19, 0x68, 0x18, 0x68, 0x89, 0x04, 0x89, 0x0E, 0x09, 0x02, 0x02, 0x40,
-0x0A, 0x43, 0x1A, 0x60, 0x1A, 0x68, 0x80, 0x23, 0xDB, 0x05, 0x19, 0x69,
-0x1A, 0x61, 0x70, 0x47, 0x08, 0x00, 0x00, 0x20, 0xFF, 0x80, 0xFF, 0xFF,
-0x08, 0x4B, 0x40, 0x22, 0x19, 0x68, 0x18, 0x68, 0x49, 0x04, 0x49, 0x0E,
-0x11, 0x43, 0x06, 0x4A, 0x09, 0x02, 0x02, 0x40, 0x0A, 0x43, 0x1A, 0x60,
-0x1A, 0x68, 0x80, 0x23, 0xDB, 0x05, 0x19, 0x69, 0x1A, 0x61, 0x70, 0x47,
-0x08, 0x00, 0x00, 0x20, 0xFF, 0x80, 0xFF, 0xFF, 0x08, 0x4B, 0x20, 0x22,
-0x19, 0x68, 0x7F, 0x20, 0x49, 0x06, 0x49, 0x0E, 0x11, 0x43, 0x1A, 0x68,
-0x82, 0x43, 0x0A, 0x43, 0x1A, 0x60, 0x1A, 0x68, 0x80, 0x23, 0xDB, 0x05,
-0x19, 0x69, 0x1A, 0x61, 0x70, 0x47, 0xC0, 0x46, 0x08, 0x00, 0x00, 0x20,
-0x07, 0x4B, 0x5F, 0x22, 0x19, 0x68, 0x7F, 0x20, 0x11, 0x40, 0x1A, 0x68,
-0x82, 0x43, 0x0A, 0x43, 0x1A, 0x60, 0x1A, 0x68, 0x80, 0x23, 0xDB, 0x05,
-0x19, 0x69, 0x1A, 0x61, 0x70, 0x47, 0xC0, 0x46, 0x08, 0x00, 0x00, 0x20,
-0x07, 0x4B, 0xBE, 0x21, 0x1A, 0x68, 0xC9, 0x01, 0x18, 0x68, 0x11, 0x40,
-0x05, 0x4A, 0x02, 0x40, 0x0A, 0x43, 0x1A, 0x60, 0x1A, 0x68, 0x80, 0x23,
-0xDB, 0x05, 0x19, 0x69, 0x1A, 0x61, 0x70, 0x47, 0x08, 0x00, 0x00, 0x20,
-0xFF, 0x80, 0xFF, 0xFF, 0x08, 0x4B, 0x20, 0x22, 0x19, 0x68, 0x18, 0x68,
-0x49, 0x04, 0x49, 0x0E, 0x11, 0x43, 0x06, 0x4A, 0x09, 0x02, 0x02, 0x40,
-0x0A, 0x43, 0x1A, 0x60, 0x1A, 0x68, 0x80, 0x23, 0xDB, 0x05, 0x19, 0x69,
-0x1A, 0x61, 0x70, 0x47, 0x08, 0x00, 0x00, 0x20, 0xFF, 0x80, 0xFF, 0xFF,
-0x80, 0x23, 0xDB, 0x05, 0x18, 0x6C, 0x80, 0x00, 0xC0, 0x0F, 0x70, 0x47,
-0x08, 0x4B, 0x10, 0x22, 0x19, 0x68, 0x7F, 0x20, 0x49, 0x06, 0x49, 0x0E,
-0x11, 0x43, 0x1A, 0x68, 0x82, 0x43, 0x0A, 0x43, 0x1A, 0x60, 0x1A, 0x68,
-0x80, 0x23, 0xDB, 0x05, 0x19, 0x69, 0x1A, 0x61, 0x70, 0x47, 0xC0, 0x46,
-0x08, 0x00, 0x00, 0x20, 0x07, 0x4B, 0x6F, 0x22, 0x19, 0x68, 0x7F, 0x20,
-0x11, 0x40, 0x1A, 0x68, 0x82, 0x43, 0x0A, 0x43, 0x1A, 0x60, 0x1A, 0x68,
-0x80, 0x23, 0xDB, 0x05, 0x19, 0x69, 0x1A, 0x61, 0x70, 0x47, 0xC0, 0x46,
-0x08, 0x00, 0x00, 0x20, 0x00, 0xB5, 0x0B, 0x4B, 0x19, 0x68, 0x00, 0x28,
-0x04, 0xD0, 0x49, 0x06, 0x49, 0x0E, 0x10, 0x22, 0x11, 0x43, 0x01, 0xE0,
-0x6F, 0x22, 0x11, 0x40, 0x1A, 0x68, 0x7F, 0x20, 0x82, 0x43, 0x0A, 0x43,
-0x1A, 0x60, 0x1A, 0x68, 0x80, 0x23, 0xDB, 0x05, 0x19, 0x69, 0x1A, 0x61,
-0x00, 0xBD, 0xC0, 0x46, 0x08, 0x00, 0x00, 0x20, 0x07, 0x4B, 0xDE, 0x21,
-0x1A, 0x68, 0xC9, 0x01, 0x18, 0x68, 0x11, 0x40, 0x05, 0x4A, 0x02, 0x40,
-0x0A, 0x43, 0x1A, 0x60, 0x1A, 0x68, 0x80, 0x23, 0xDB, 0x05, 0x19, 0x69,
-0x1A, 0x61, 0x70, 0x47, 0x08, 0x00, 0x00, 0x20, 0xFF, 0x80, 0xFF, 0xFF,
-0x08, 0x4B, 0x10, 0x22, 0x19, 0x68, 0x18, 0x68, 0x49, 0x04, 0x49, 0x0E,
-0x11, 0x43, 0x06, 0x4A, 0x09, 0x02, 0x02, 0x40, 0x0A, 0x43, 0x1A, 0x60,
-0x1A, 0x68, 0x80, 0x23, 0xDB, 0x05, 0x19, 0x69, 0x1A, 0x61, 0x70, 0x47,
-0x08, 0x00, 0x00, 0x20, 0xFF, 0x80, 0xFF, 0xFF, 0x80, 0x23, 0xDB, 0x05,
-0x18, 0x6C, 0xC0, 0x00, 0xC0, 0x0F, 0x70, 0x47, 0x08, 0x4B, 0x01, 0x22,
-0x19, 0x68, 0x7F, 0x20, 0x49, 0x06, 0x49, 0x0E, 0x11, 0x43, 0x1A, 0x68,
-0x82, 0x43, 0x0A, 0x43, 0x1A, 0x60, 0x1A, 0x68, 0x80, 0x23, 0xDB, 0x05,
-0x19, 0x69, 0x1A, 0x61, 0x70, 0x47, 0xC0, 0x46, 0x08, 0x00, 0x00, 0x20,
-0x07, 0x4B, 0x7E, 0x22, 0x19, 0x68, 0x7F, 0x20, 0x11, 0x40, 0x1A, 0x68,
-0x82, 0x43, 0x0A, 0x43, 0x1A, 0x60, 0x1A, 0x68, 0x80, 0x23, 0xDB, 0x05,
-0x19, 0x69, 0x1A, 0x61, 0x70, 0x47, 0xC0, 0x46, 0x08, 0x00, 0x00, 0x20,
-0x07, 0x4B, 0xFC, 0x21, 0x1A, 0x68, 0xC9, 0x01, 0x18, 0x68, 0x11, 0x40,
-0x05, 0x4A, 0x02, 0x40, 0x0A, 0x43, 0x1A, 0x60, 0x1A, 0x68, 0x80, 0x23,
-0xDB, 0x05, 0x19, 0x69, 0x1A, 0x61, 0x70, 0x47, 0x08, 0x00, 0x00, 0x20,
-0xFF, 0x80, 0xFF, 0xFF, 0x08, 0x4B, 0x01, 0x22, 0x19, 0x68, 0x18, 0x68,
-0x49, 0x04, 0x49, 0x0E, 0x11, 0x43, 0x06, 0x4A, 0x09, 0x02, 0x02, 0x40,
-0x0A, 0x43, 0x1A, 0x60, 0x1A, 0x68, 0x80, 0x23, 0xDB, 0x05, 0x19, 0x69,
-0x1A, 0x61, 0x70, 0x47, 0x08, 0x00, 0x00, 0x20, 0xFF, 0x80, 0xFF, 0xFF,
-0x80, 0x23, 0xDB, 0x05, 0x18, 0x6C, 0xC0, 0x01, 0xC0, 0x0F, 0x70, 0x47,
-0x08, 0x4B, 0x02, 0x22, 0x19, 0x68, 0x7F, 0x20, 0x49, 0x06, 0x49, 0x0E,
-0x11, 0x43, 0x1A, 0x68, 0x82, 0x43, 0x0A, 0x43, 0x1A, 0x60, 0x1A, 0x68,
-0x80, 0x23, 0xDB, 0x05, 0x19, 0x69, 0x1A, 0x61, 0x70, 0x47, 0xC0, 0x46,
-0x08, 0x00, 0x00, 0x20, 0x07, 0x4B, 0x7D, 0x22, 0x19, 0x68, 0x7F, 0x20,
-0x11, 0x40, 0x1A, 0x68, 0x82, 0x43, 0x0A, 0x43, 0x1A, 0x60, 0x1A, 0x68,
-0x80, 0x23, 0xDB, 0x05, 0x19, 0x69, 0x1A, 0x61, 0x70, 0x47, 0xC0, 0x46,
-0x08, 0x00, 0x00, 0x20, 0x07, 0x4B, 0xFA, 0x21, 0x1A, 0x68, 0xC9, 0x01,
-0x18, 0x68, 0x11, 0x40, 0x05, 0x4A, 0x02, 0x40, 0x0A, 0x43, 0x1A, 0x60,
-0x1A, 0x68, 0x80, 0x23, 0xDB, 0x05, 0x19, 0x69, 0x1A, 0x61, 0x70, 0x47,
-0x08, 0x00, 0x00, 0x20, 0xFF, 0x80, 0xFF, 0xFF, 0x08, 0x4B, 0x02, 0x22,
-0x19, 0x68, 0x18, 0x68, 0x49, 0x04, 0x49, 0x0E, 0x11, 0x43, 0x06, 0x4A,
-0x09, 0x02, 0x02, 0x40, 0x0A, 0x43, 0x1A, 0x60, 0x1A, 0x68, 0x80, 0x23,
-0xDB, 0x05, 0x19, 0x69, 0x1A, 0x61, 0x70, 0x47, 0x08, 0x00, 0x00, 0x20,
-0xFF, 0x80, 0xFF, 0xFF, 0x80, 0x23, 0xDB, 0x05, 0x18, 0x6C, 0x80, 0x01,
-0xC0, 0x0F, 0x70, 0x47, 0x08, 0x4B, 0x04, 0x22, 0x19, 0x68, 0x7F, 0x20,
-0x49, 0x06, 0x49, 0x0E, 0x11, 0x43, 0x1A, 0x68, 0x82, 0x43, 0x0A, 0x43,
-0x1A, 0x60, 0x1A, 0x68, 0x80, 0x23, 0xDB, 0x05, 0x19, 0x69, 0x1A, 0x61,
-0x70, 0x47, 0xC0, 0x46, 0x08, 0x00, 0x00, 0x20, 0x07, 0x4B, 0x7B, 0x22,
-0x19, 0x68, 0x7F, 0x20, 0x11, 0x40, 0x1A, 0x68, 0x82, 0x43, 0x0A, 0x43,
-0x1A, 0x60, 0x1A, 0x68, 0x80, 0x23, 0xDB, 0x05, 0x19, 0x69, 0x1A, 0x61,
-0x70, 0x47, 0xC0, 0x46, 0x08, 0x00, 0x00, 0x20, 0x00, 0xB5, 0x0B, 0x4B,
-0x19, 0x68, 0x00, 0x28, 0x04, 0xD0, 0x49, 0x06, 0x49, 0x0E, 0x04, 0x22,
-0x11, 0x43, 0x01, 0xE0, 0x7B, 0x22, 0x11, 0x40, 0x1A, 0x68, 0x7F, 0x20,
-0x82, 0x43, 0x0A, 0x43, 0x1A, 0x60, 0x1A, 0x68, 0x80, 0x23, 0xDB, 0x05,
-0x19, 0x69, 0x1A, 0x61, 0x00, 0xBD, 0xC0, 0x46, 0x08, 0x00, 0x00, 0x20,
-0x07, 0x4B, 0xF6, 0x21, 0x1A, 0x68, 0xC9, 0x01, 0x18, 0x68, 0x11, 0x40,
-0x05, 0x4A, 0x02, 0x40, 0x0A, 0x43, 0x1A, 0x60, 0x1A, 0x68, 0x80, 0x23,
-0xDB, 0x05, 0x19, 0x69, 0x1A, 0x61, 0x70, 0x47, 0x08, 0x00, 0x00, 0x20,
-0xFF, 0x80, 0xFF, 0xFF, 0x08, 0x4B, 0x04, 0x22, 0x19, 0x68, 0x18, 0x68,
-0x49, 0x04, 0x49, 0x0E, 0x11, 0x43, 0x06, 0x4A, 0x09, 0x02, 0x02, 0x40,
-0x0A, 0x43, 0x1A, 0x60, 0x1A, 0x68, 0x80, 0x23, 0xDB, 0x05, 0x19, 0x69,
-0x1A, 0x61, 0x70, 0x47, 0x08, 0x00, 0x00, 0x20, 0xFF, 0x80, 0xFF, 0xFF,
-0x80, 0x23, 0xDB, 0x05, 0x18, 0x6C, 0x40, 0x01, 0xC0, 0x0F, 0x70, 0x47,
-0x10, 0xB5, 0x80, 0x23, 0xDB, 0x05, 0x04, 0x1D, 0x98, 0x69, 0x3F, 0x22,
-0x14, 0x40, 0x90, 0x43, 0x20, 0x43, 0x01, 0x24, 0x98, 0x61, 0x88, 0x1C,
-0x21, 0x40, 0x41, 0x18, 0x0A, 0x40, 0x11, 0x02, 0x98, 0x69, 0x02, 0x4A,
-0x02, 0x40, 0x0A, 0x43, 0x9A, 0x61, 0x10, 0xBD, 0xFF, 0xC0, 0xFF, 0xFF,
-0x06, 0x4B, 0x7F, 0x22, 0x19, 0x68, 0x80, 0x23, 0xDB, 0x05, 0x18, 0x6C,
-0x01, 0x39, 0x90, 0x43, 0x11, 0x40, 0x02, 0x1C, 0x0A, 0x43, 0x1A, 0x64,
-0x70, 0x47, 0xC0, 0x46, 0x18, 0x09, 0x00, 0x20, 0x80, 0x23, 0xDB, 0x05,
-0x1A, 0x6C, 0x7F, 0x21, 0x8A, 0x43, 0x01, 0x21, 0x0A, 0x43, 0x1A, 0x64,
-0x70, 0x47, 0x80, 0x23, 0xDB, 0x05, 0xDA, 0x69, 0x0F, 0x21, 0x8A, 0x43,
-0x02, 0x21, 0x0A, 0x43, 0xDA, 0x61, 0xDA, 0x69, 0xF0, 0x21, 0x8A, 0x43,
-0x30, 0x21, 0x0A, 0x43, 0xDA, 0x61, 0x0C, 0x4A, 0x11, 0x79, 0x01, 0x39,
-0xC9, 0xB2, 0x59, 0x77, 0xD8, 0x69, 0x0A, 0x49, 0x01, 0x40, 0x80, 0x20,
-0xC0, 0x02, 0x01, 0x43, 0xD9, 0x61, 0xD8, 0x69, 0x07, 0x49, 0x01, 0x40,
-0xA0, 0x20, 0xC0, 0x03, 0x01, 0x43, 0xD9, 0x61, 0x92, 0x79, 0x01, 0x3A,
-0xD2, 0xB2, 0xDA, 0x77, 0x70, 0x47, 0xC0, 0x46, 0x04, 0x02, 0x00, 0x20,
-0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xFF, 0x0F, 0xFF, 0x30, 0xB5, 0x1A, 0x4A,
-0x1A, 0x4B, 0x11, 0x88, 0x1A, 0x4C, 0xC9, 0x18, 0x80, 0x23, 0xDB, 0x05,
-0x89, 0xB2, 0x18, 0x8C, 0x19, 0x84, 0x59, 0x8C, 0x00, 0x21, 0x59, 0x84,
-0x50, 0x88, 0x16, 0x4D, 0x01, 0x19, 0x89, 0xB2, 0x9A, 0x8C, 0x99, 0x84,
-0x42, 0x1E, 0xDC, 0x8C, 0x92, 0xB2, 0x44, 0x19, 0xDA, 0x84, 0xA4, 0xB2,
-0x1D, 0x8D, 0x1C, 0x85, 0x10, 0x4C, 0x00, 0x19, 0x80, 0xB2, 0x5C, 0x8D,
-0x58, 0x85, 0x98, 0x8D, 0x99, 0x85, 0xD8, 0x8D, 0xDA, 0x85, 0x18, 0x8E,
-0x19, 0x86, 0x58, 0x8E, 0x5A, 0x86, 0x98, 0x8E, 0x99, 0x86, 0xD8, 0x8E,
-0xDA, 0x86, 0x18, 0x8F, 0x19, 0x87, 0x58, 0x8F, 0x5A, 0x87, 0x98, 0x8F,
-0x99, 0x87, 0xD9, 0x8F, 0xDA, 0x87, 0x30, 0xBD, 0x04, 0x02, 0x00, 0x20,
-0xFF, 0x07, 0x00, 0x00, 0xFF, 0x03, 0x00, 0x00, 0xFF, 0x05, 0x00, 0x00,
-0xFF, 0x01, 0x00, 0x00, 0x30, 0xB5, 0x22, 0x4B, 0xEE, 0x24, 0x1A, 0x68,
-0xE4, 0x01, 0x14, 0x40, 0x20, 0x48, 0x1A, 0x68, 0x7F, 0x21, 0x02, 0x40,
-0x22, 0x43, 0x1A, 0x60, 0x1C, 0x68, 0x80, 0x22, 0xD2, 0x05, 0x15, 0x69,
-0x14, 0x61, 0x1C, 0x4C, 0xA4, 0x7C, 0x00, 0x2C, 0x16, 0xD0, 0x1C, 0x68,
-0x04, 0x25, 0x64, 0x04, 0x64, 0x0E, 0x2C, 0x43, 0x1D, 0x68, 0x0C, 0x40,
-0x24, 0x02, 0x28, 0x40, 0x20, 0x43, 0x18, 0x60, 0x18, 0x68, 0x14, 0x69,
-0x10, 0x61, 0x1C, 0x68, 0x7B, 0x20, 0x20, 0x40, 0x1C, 0x68, 0x8C, 0x43,
-0x21, 0x1C, 0x01, 0x43, 0x19, 0x60, 0x15, 0xE0, 0x1C, 0x68, 0x04, 0x25,
-0x64, 0x06, 0x64, 0x0E, 0x2C, 0x43, 0x1D, 0x68, 0x0C, 0x40, 0x8D, 0x43,
-0x29, 0x1C, 0x21, 0x43, 0x19, 0x60, 0x19, 0x68, 0x14, 0x69, 0x11, 0x61,
-0x1C, 0x68, 0xF6, 0x21, 0xC9, 0x01, 0x21, 0x40, 0x1C, 0x68, 0x20, 0x40,
-0x08, 0x43, 0x18, 0x60, 0x1B, 0x68, 0x11, 0x69, 0x13, 0x61, 0x30, 0xBD,
-0x08, 0x00, 0x00, 0x20, 0xFF, 0x80, 0xFF, 0xFF, 0xAE, 0x09, 0x00, 0x20,
-0x00, 0xB5, 0x72, 0xB6, 0x0F, 0x4B, 0x01, 0x22, 0x1A, 0x70, 0x0F, 0x4B,
-0x9A, 0x7C, 0x0F, 0x4B, 0x00, 0x2A, 0x07, 0xD0, 0x1A, 0x68, 0xF6, 0x21,
-0xC9, 0x01, 0x11, 0x40, 0x18, 0x68, 0x0C, 0x4A, 0x02, 0x40, 0x05, 0xE0,
-0x19, 0x68, 0x7B, 0x22, 0x11, 0x40, 0x1A, 0x68, 0x7F, 0x20, 0x82, 0x43,
-0x0A, 0x43, 0x1A, 0x60, 0x1A, 0x68, 0x80, 0x23, 0xDB, 0x05, 0x19, 0x69,
-0x1A, 0x61, 0x62, 0xB6, 0x00, 0xBD, 0xC0, 0x46, 0x64, 0x00, 0x00, 0x20,
-0xAE, 0x09, 0x00, 0x20, 0x08, 0x00, 0x00, 0x20, 0xFF, 0x80, 0xFF, 0xFF,
-0x00, 0xB5, 0x72, 0xB6, 0x10, 0x4B, 0x00, 0x22, 0x1A, 0x70, 0x10, 0x4B,
-0x9A, 0x7C, 0x10, 0x4B, 0x19, 0x68, 0x00, 0x2A, 0x08, 0xD0, 0x49, 0x04,
-0x04, 0x22, 0x49, 0x0E, 0x11, 0x43, 0x18, 0x68, 0x0C, 0x4A, 0x09, 0x02,
-0x02, 0x40, 0x06, 0xE0, 0x49, 0x06, 0x04, 0x22, 0x49, 0x0E, 0x11, 0x43,
-0x1A, 0x68, 0x7F, 0x20, 0x82, 0x43, 0x0A, 0x43, 0x1A, 0x60, 0x1A, 0x68,
-0x80, 0x23, 0xDB, 0x05, 0x19, 0x69, 0x1A, 0x61, 0x62, 0xB6, 0x00, 0xBD,
-0x64, 0x00, 0x00, 0x20, 0xAE, 0x09, 0x00, 0x20, 0x08, 0x00, 0x00, 0x20,
-0xFF, 0x80, 0xFF, 0xFF, 0x01, 0x4B, 0x18, 0x78, 0x70, 0x47, 0xC0, 0x46,
-0x64, 0x00, 0x00, 0x20, 0x00, 0xB5, 0x80, 0x23, 0xDB, 0x05, 0x19, 0x6C,
-0x80, 0x22, 0xD2, 0x01, 0x0A, 0x43, 0x1A, 0x64, 0x23, 0x4A, 0x80, 0x21,
-0x10, 0x68, 0x49, 0x00, 0x01, 0x43, 0x11, 0x60, 0x12, 0x68, 0x99, 0x68,
-0x9A, 0x60, 0x19, 0x6C, 0x80, 0x22, 0x12, 0x02, 0x0A, 0x43, 0x1A, 0x64,
-0x19, 0x6C, 0x1D, 0x4A, 0x0A, 0x40, 0x1A, 0x64, 0x1C, 0x4B, 0x7F, 0x22,
-0x59, 0x7B, 0x1C, 0x4B, 0x11, 0x40, 0x18, 0x68, 0x1B, 0x4A, 0x09, 0x04,
-0x02, 0x40, 0x0A, 0x43, 0x1A, 0x60, 0x19, 0x68, 0xA0, 0x22, 0xD2, 0x05,
-0x90, 0x68, 0x91, 0x60, 0x18, 0x68, 0x17, 0x49, 0x01, 0x40, 0x84, 0x20,
-0xC0, 0x05, 0x01, 0x43, 0x19, 0x60, 0x19, 0x68, 0x90, 0x68, 0x91, 0x60,
-0x13, 0x49, 0x09, 0x78, 0x49, 0xB2, 0x00, 0x29, 0x02, 0xD0, 0x01, 0x29,
-0x0C, 0xD1, 0x03, 0xE0, 0x18, 0x68, 0x10, 0x49, 0x01, 0x40, 0x03, 0xE0,
-0x18, 0x68, 0x80, 0x21, 0x09, 0x04, 0x01, 0x43, 0x19, 0x60, 0x1B, 0x68,
-0x91, 0x68, 0x93, 0x60, 0x80, 0x23, 0xDB, 0x05, 0x19, 0x6C, 0x0A, 0x4A,
-0x0A, 0x40, 0x1A, 0x64, 0x00, 0xBD, 0xC0, 0x46, 0x14, 0x00, 0x00, 0x20,
-0xFF, 0x7F, 0xFF, 0xFF, 0xAE, 0x09, 0x00, 0x20, 0x0C, 0x00, 0x00, 0x20,
-0xFF, 0xFF, 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0x80, 0xFA, 0x02, 0x00, 0x20,
-0xFF, 0xFF, 0x7F, 0xFF, 0xFF, 0xBF, 0xFF, 0xFF, 0x04, 0x4B, 0x01, 0x22,
-0x1A, 0x70, 0x80, 0x23, 0xDB, 0x05, 0x99, 0x6C, 0x91, 0x43, 0x99, 0x64,
-0x1A, 0x70, 0x70, 0x47, 0x00, 0x00, 0x00, 0x20, 0x03, 0x4A, 0x01, 0x23,
-0x13, 0x70, 0x80, 0x22, 0xD2, 0x05, 0x53, 0x70, 0x70, 0x47, 0xC0, 0x46,
-0x02, 0x00, 0x00, 0x20, 0x00, 0xB5, 0x06, 0x4B, 0x72, 0xB6, 0x1A, 0x78,
-0x00, 0x2A, 0x04, 0xD0, 0xC0, 0x46, 0xC0, 0x46, 0x62, 0xB6, 0x30, 0xBF,
-0xF6, 0xE7, 0x62, 0xB6, 0x00, 0xBD, 0xC0, 0x46, 0x02, 0x00, 0x00, 0x20,
-0x38, 0xB5, 0x09, 0x4B, 0x09, 0x49, 0x9A, 0x78, 0x1C, 0x79, 0x51, 0x43,
-0x08, 0x4B, 0x05, 0x1C, 0xC9, 0x18, 0x08, 0x48, 0x02, 0xF0, 0x7A, 0xF8,
-0x06, 0x4B, 0x29, 0x1C, 0x01, 0x34, 0x58, 0x43, 0xA1, 0x40, 0x02, 0xF0,
-0x73, 0xF8, 0x38, 0xBD, 0xAA, 0x0A, 0x00, 0x20, 0x44, 0xFE, 0xFF, 0xFF,
-0xFE, 0x24, 0x02, 0x00, 0x40, 0x42, 0x0F, 0x00, 0x05, 0x4B, 0x19, 0x68,
-0x80, 0x23, 0xDB, 0x05, 0x5A, 0x69, 0x09, 0x02, 0x12, 0x0E, 0x09, 0x0A,
-0x12, 0x06, 0x0A, 0x43, 0x5A, 0x61, 0x70, 0x47, 0x04, 0x00, 0x00, 0x20,
-0x01, 0x4B, 0x18, 0x60, 0x70, 0x47, 0xC0, 0x46, 0x04, 0x00, 0x00, 0x20,
-0x05, 0x4B, 0x01, 0x22, 0x1A, 0x70, 0x80, 0x23, 0xDB, 0x05, 0x59, 0x69,
-0x80, 0x22, 0x52, 0x04, 0x0A, 0x43, 0x5A, 0x61, 0x70, 0x47, 0xC0, 0x46,
-0x01, 0x00, 0x00, 0x20, 0x00, 0xB5, 0x05, 0x4B, 0x72, 0xB6, 0x1A, 0x78,
-0x00, 0x2A, 0x03, 0xD0, 0xC0, 0x46, 0xC0, 0x46, 0x62, 0xB6, 0xF7, 0xE7,
-0x62, 0xB6, 0x00, 0xBD, 0x00, 0x00, 0x00, 0x20, 0x00, 0xB5, 0x10, 0x4B,
-0x1B, 0x68, 0x9A, 0x05, 0x0C, 0xD5, 0x0F, 0x4A, 0x0F, 0x4B, 0x72, 0xB6,
-0x11, 0x78, 0x00, 0x29, 0x02, 0xD1, 0x19, 0x78, 0x00, 0x29, 0x11, 0xD0,
-0xC0, 0x46, 0xC0, 0x46, 0x62, 0xB6, 0xF4, 0xE7, 0x08, 0x4A, 0x09, 0x4B,
-0x72, 0xB6, 0x11, 0x78, 0x00, 0x29, 0x02, 0xD1, 0x19, 0x78, 0x00, 0x29,
-0x04, 0xD0, 0xC0, 0x46, 0xC0, 0x46, 0x62, 0xB6, 0x30, 0xBF, 0xF3, 0xE7,
-0x62, 0xB6, 0x00, 0xBD, 0x58, 0x00, 0x00, 0x20, 0x01, 0x00, 0x00, 0x20,
-0x00, 0x00, 0x00, 0x20, 0x70, 0xB5, 0x13, 0x49, 0x13, 0x4B, 0x04, 0x24,
-0x19, 0x60, 0x13, 0x4B, 0x13, 0x4D, 0x1A, 0x68, 0x22, 0x43, 0x1A, 0x60,
-0x1A, 0x68, 0x02, 0x24, 0xA2, 0x43, 0x1A, 0x60, 0x1A, 0x68, 0x01, 0x24,
-0x22, 0x43, 0x0F, 0x4C, 0x1A, 0x60, 0x00, 0x22, 0x22, 0x60, 0x0E, 0x4A,
-0x11, 0x60, 0x2E, 0x78, 0x2D, 0x79, 0x70, 0x43, 0x01, 0x35, 0xE8, 0x40,
-0x09, 0x1A, 0x11, 0x60, 0x20, 0x68, 0x11, 0x68, 0x88, 0x42, 0xFB, 0xD2,
-0x1A, 0x68, 0x01, 0x21, 0x8A, 0x43, 0x1A, 0x60, 0x70, 0xBD, 0xC0, 0x46,
-0xFF, 0xFF, 0xFF, 0x00, 0x14, 0xE0, 0x00, 0xE0, 0x10, 0xE0, 0x00, 0xE0,
-0xAA, 0x0A, 0x00, 0x20, 0x18, 0xE0, 0x00, 0xE0, 0xFC, 0x01, 0x00, 0x20,
-0x00, 0xB5, 0x00, 0x23, 0x06, 0x4A, 0x98, 0x42, 0x02, 0xDB, 0xD3, 0x1C,
-0xDB, 0x7F, 0x43, 0x43, 0x02, 0x32, 0xD2, 0x7F, 0x01, 0x30, 0x52, 0xB2,
-0x90, 0x40, 0x18, 0x18, 0x40, 0x18, 0x00, 0xBD, 0xAE, 0x09, 0x00, 0x20,
-0xF0, 0xB5, 0x85, 0xB0, 0x05, 0x1C, 0x0C, 0x1C, 0x16, 0x1C, 0x00, 0x29,
-0x05, 0xD0, 0x2B, 0x4B, 0x02, 0x33, 0xDB, 0x7F, 0x5B, 0xB2, 0x00, 0x2B,
-0x4E, 0xD0, 0x21, 0x1C, 0x28, 0x1C, 0xFF, 0xF7, 0xDD, 0xFF, 0x27, 0x49,
-0x27, 0x4F, 0x4A, 0x7A, 0x09, 0x7A, 0x13, 0x19, 0x51, 0x18, 0x02, 0x91,
-0x41, 0x01, 0xCF, 0x19, 0x00, 0x22, 0x03, 0x97, 0x84, 0x46, 0x13, 0xE0,
-0x22, 0x48, 0xC1, 0x56, 0x58, 0x1C, 0xC0, 0xB2, 0xCF, 0x0F, 0x01, 0x90,
-0x7F, 0x18, 0x03, 0x98, 0x7F, 0x10, 0xC7, 0x19, 0x08, 0x37, 0x00, 0x97,
-0x6F, 0x46, 0x38, 0x79, 0x00, 0x9F, 0x02, 0x33, 0xB8, 0x70, 0x01, 0x27,
-0x8F, 0x40, 0x3A, 0x43, 0x02, 0x98, 0x83, 0x42, 0xE8, 0xDB, 0x15, 0x4B,
-0x60, 0x46, 0xDF, 0x79, 0x61, 0x42, 0x61, 0x41, 0x5B, 0x7C, 0x79, 0x18,
-0x1C, 0x19, 0x49, 0x10, 0x01, 0x39, 0x01, 0x34, 0x89, 0x06, 0x24, 0x05,
-0x0C, 0x43, 0x22, 0x43, 0x0E, 0x49, 0x10, 0x4C, 0x40, 0x01, 0x43, 0x18,
-0x0F, 0x4F, 0x01, 0x19, 0x4C, 0x68, 0x4A, 0x60, 0xAA, 0x1C, 0xD2, 0xB2,
-0xC0, 0x19, 0x02, 0x71, 0x00, 0x2E, 0x07, 0xD0, 0x0B, 0x4A, 0x01, 0x21,
-0x52, 0x57, 0x91, 0x40, 0x0A, 0x1C, 0x99, 0x69, 0x9A, 0x61, 0x01, 0xE0,
-0x9A, 0x69, 0x9E, 0x61, 0x05, 0xB0, 0xF0, 0xBD, 0xAE, 0x09, 0x00, 0x20,
-0x0A, 0x03, 0x00, 0x20, 0x00, 0x10, 0x00, 0x40, 0x10, 0x75, 0x00, 0x00,
-0x18, 0x10, 0x00, 0x40, 0x10, 0x10, 0x00, 0x40, 0xEA, 0x74, 0x00, 0x00,
-0x10, 0xB5, 0x08, 0x4B, 0x00, 0x21, 0x1B, 0x68, 0x01, 0x3B, 0x08, 0xE0,
-0x06, 0x4C, 0x58, 0x01, 0x09, 0x22, 0x00, 0x19, 0x84, 0x18, 0xA1, 0x72,
-0x01, 0x3A, 0xFB, 0xD2, 0x01, 0x3B, 0x00, 0x2B, 0xF4, 0xDA, 0x10, 0xBD,
-0x18, 0x09, 0x00, 0x20, 0x00, 0x10, 0x00, 0x40, 0x38, 0xB5, 0xFF, 0xF7,
-0xE7, 0xFF, 0x00, 0x21, 0x01, 0x20, 0x0A, 0x1C, 0x40, 0x42, 0xFF, 0xF7,
-0x75, 0xFF, 0x01, 0x20, 0x40, 0x42, 0x01, 0x21, 0x00, 0x22, 0xFF, 0xF7,
-0x6F, 0xFF, 0x0A, 0x4D, 0xAC, 0x7B, 0x0B, 0xE0, 0x20, 0x1C, 0x00, 0x21,
-0x01, 0x22, 0xFF, 0xF7, 0x67, 0xFF, 0x01, 0x21, 0x20, 0x1C, 0x0A, 0x1C,
-0xFF, 0xF7, 0x62, 0xFF, 0x01, 0x34, 0xE4, 0xB2, 0xAA, 0x7B, 0x2B, 0x79,
-0xD3, 0x18, 0x9C, 0x42, 0xEE, 0xDB, 0x38, 0xBD, 0x0A, 0x03, 0x00, 0x20,
-0xF0, 0xB5, 0x85, 0xB0, 0x05, 0x1C, 0x0E, 0x1C, 0x02, 0x92, 0x1F, 0x1C,
-0x00, 0x29, 0x05, 0xD0, 0x21, 0x4B, 0x02, 0x33, 0xDB, 0x7F, 0x5B, 0xB2,
-0x00, 0x2B, 0x3B, 0xD0, 0x31, 0x1C, 0x28, 0x1C, 0xFF, 0xF7, 0x34, 0xFF,
-0x1D, 0x4A, 0xC0, 0xB2, 0x01, 0x90, 0x53, 0x7A, 0x12, 0x7A, 0xF6, 0x18,
-0x9A, 0x18, 0x1B, 0x4B, 0xB9, 0x1E, 0x1B, 0x7C, 0x48, 0x1E, 0x81, 0x41,
-0x49, 0x42, 0xF6, 0xB2, 0x03, 0x91, 0x9C, 0x46, 0x24, 0xE0, 0x00, 0x2F,
-0x07, 0xD1, 0x26, 0x21, 0x71, 0x43, 0x15, 0x4B, 0x49, 0x19, 0xCC, 0x5C,
-0x64, 0x44, 0xE4, 0xB2, 0x08, 0xE0, 0x01, 0x2F, 0x04, 0xD1, 0x73, 0x01,
-0x11, 0x49, 0x5B, 0x19, 0x5C, 0x5C, 0x01, 0xE0, 0x03, 0x9B, 0x1C, 0x40,
-0x0F, 0x4B, 0x02, 0x99, 0x9B, 0x57, 0x02, 0x36, 0xD8, 0x0F, 0xC0, 0x18,
-0x63, 0x18, 0xDB, 0xB2, 0x00, 0x93, 0x01, 0x9B, 0x40, 0x10, 0x59, 0x01,
-0x6B, 0x46, 0x08, 0x18, 0x1B, 0x78, 0x09, 0x49, 0xF6, 0xB2, 0x43, 0x54,
-0x96, 0x42, 0xD8, 0xDB, 0x05, 0xB0, 0xF0, 0xBD, 0xAE, 0x09, 0x00, 0x20,
-0x0A, 0x03, 0x00, 0x20, 0x48, 0x0D, 0x00, 0x20, 0x36, 0x75, 0x00, 0x00,
-0xB3, 0x0A, 0x00, 0x20, 0x10, 0x75, 0x00, 0x00, 0x00, 0x10, 0x00, 0x40,
-0x70, 0xB5, 0x2A, 0x4B, 0x2A, 0x4A, 0x19, 0x68, 0x80, 0x24, 0x0A, 0x40,
-0x1A, 0x60, 0x1A, 0x68, 0xE4, 0x05, 0x28, 0x4D, 0xA1, 0x68, 0xA2, 0x60,
-0x69, 0x7A, 0x03, 0x22, 0x18, 0x68, 0x11, 0x40, 0x25, 0x4A, 0x89, 0x04,
-0x02, 0x40, 0x0A, 0x43, 0x1A, 0x60, 0x1A, 0x68, 0xA1, 0x68, 0xA2, 0x60,
-0x19, 0x68, 0x80, 0x22, 0x52, 0x03, 0x0A, 0x43, 0x1A, 0x60, 0x1A, 0x68,
-0xA1, 0x68, 0xA2, 0x60, 0x29, 0x7A, 0x18, 0x68, 0x07, 0x26, 0x1D, 0x4A,
-0x31, 0x40, 0x49, 0x05, 0x02, 0x40, 0x0A, 0x43, 0x1A, 0x60, 0x1A, 0x68,
-0xA1, 0x68, 0xA2, 0x60, 0xA9, 0x7B, 0x0F, 0x29, 0x25, 0xD8, 0xEA, 0x7B,
-0x0F, 0x2A, 0x22, 0xD8, 0x18, 0x68, 0x09, 0x07, 0x00, 0x01, 0x00, 0x09,
-0x01, 0x43, 0x19, 0x60, 0x0F, 0x21, 0x0A, 0x40, 0x18, 0x68, 0x11, 0x06,
-0x11, 0x4A, 0x02, 0x40, 0x0A, 0x43, 0x1A, 0x60, 0x1B, 0x68, 0xA2, 0x68,
-0xA3, 0x60, 0xFF, 0xF7, 0x49, 0xFC, 0x0E, 0x4A, 0x63, 0x6C, 0x13, 0x43,
-0x63, 0x64, 0xFF, 0xF7, 0x5C, 0xFC, 0xFF, 0xF7, 0x87, 0xFC, 0xEB, 0x79,
-0x0A, 0x4A, 0x1E, 0x40, 0x33, 0x02, 0x26, 0x6C, 0x16, 0x40, 0x1E, 0x43,
-0x26, 0x64, 0x70, 0xBD, 0x14, 0x00, 0x00, 0x20, 0xFF, 0xFF, 0xFC, 0xFF,
-0x48, 0x0D, 0x00, 0x20, 0xFF, 0xFF, 0xF3, 0xFF, 0xFF, 0xFF, 0x1F, 0xFF,
-0xFF, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0x0F, 0x00, 0xFF, 0xF8, 0xFF, 0xFF,
-0x00, 0xB5, 0x80, 0x21, 0xC9, 0x05, 0x0B, 0x79, 0x5A, 0x1E, 0xD2, 0xB2,
-0x98, 0x42, 0x09, 0xDD, 0x00, 0xE0, 0x0B, 0x71, 0x01, 0x33, 0xDB, 0xB2,
-0x83, 0x42, 0xFA, 0xDD, 0x04, 0xE0, 0x0A, 0x71, 0x01, 0x3A, 0xD2, 0xB2,
-0x82, 0x42, 0xFA, 0xDA, 0x00, 0xBD, 0x38, 0xB5, 0x17, 0x4C, 0xA0, 0x78,
-0xFF, 0xF7, 0xE6, 0xFF, 0x80, 0x23, 0xDB, 0x05, 0x21, 0x79, 0x5A, 0x68,
-0xC9, 0x07, 0x52, 0x00, 0x52, 0x08, 0x0A, 0x43, 0x5A, 0x60, 0x60, 0x79,
-0x03, 0x22, 0x5D, 0x68, 0x10, 0x49, 0x10, 0x40, 0x80, 0x03, 0x29, 0x40,
-0x01, 0x43, 0x59, 0x60, 0xA0, 0x79, 0x0E, 0x49, 0x5D, 0x68, 0x10, 0x40,
-0x00, 0x03, 0x29, 0x40, 0x01, 0x43, 0x59, 0x60, 0xE0, 0x79, 0x0B, 0x49,
-0x5D, 0x68, 0x10, 0x40, 0x29, 0x40, 0x80, 0x02, 0x01, 0x43, 0x59, 0x60,
-0x21, 0x7A, 0x58, 0x68, 0x0A, 0x40, 0x11, 0x02, 0x06, 0x4A, 0x02, 0x40,
-0x0A, 0x43, 0x5A, 0x60, 0x38, 0xBD, 0xC0, 0x46, 0xAA, 0x0A, 0x00, 0x20,
-0xFF, 0x3F, 0xFF, 0xFF, 0xFF, 0xCF, 0xFF, 0xFF, 0xFF, 0xF3, 0xFF, 0xFF,
-0xFF, 0xFC, 0xFF, 0xFF, 0xF8, 0xB5, 0x80, 0x23, 0xDB, 0x05, 0x1A, 0x68,
-0x7A, 0x4A, 0x00, 0x21, 0x08, 0x20, 0x19, 0x60, 0x10, 0x60, 0x14, 0x68,
-0x9D, 0x68, 0x9C, 0x60, 0x77, 0x4C, 0x21, 0x60, 0x24, 0x68, 0xDD, 0x68,
-0xDC, 0x60, 0xFE, 0x25, 0x75, 0x4C, 0xED, 0x01, 0x25, 0x60, 0x24, 0x68,
-0x1D, 0x69, 0x1C, 0x61, 0x5C, 0x69, 0x59, 0x61, 0x9C, 0x69, 0x99, 0x61,
-0xDC, 0x69, 0xD9, 0x61, 0x1C, 0x6C, 0x80, 0x24, 0xE4, 0x01, 0x1C, 0x64,
-0x5C, 0x6C, 0x59, 0x64, 0x9C, 0x6C, 0x6D, 0x4C, 0x99, 0x64, 0x21, 0x60,
-0xA0, 0x24, 0xE4, 0x05, 0xA5, 0x68, 0xA1, 0x60, 0x1C, 0x6C, 0x6A, 0x49,
-0x21, 0x40, 0x19, 0x64, 0x1C, 0x68, 0x80, 0x21, 0x49, 0x05, 0x21, 0x43,
-0x19, 0x60, 0x67, 0x49, 0x01, 0x31, 0xC9, 0x7F, 0x00, 0x29, 0x03, 0xD0,
-0x11, 0x68, 0x08, 0x43, 0x10, 0x60, 0x02, 0xE0, 0x11, 0x68, 0x81, 0x43,
-0x11, 0x60, 0x11, 0x68, 0x98, 0x68, 0x99, 0x60, 0x13, 0x68, 0x04, 0x26,
-0x33, 0x43, 0x13, 0x60, 0x13, 0x68, 0x80, 0x25, 0xED, 0x05, 0xA9, 0x68,
-0xAB, 0x60, 0x13, 0x68, 0x02, 0x27, 0x3B, 0x43, 0x13, 0x60, 0x13, 0x68,
-0xA9, 0x68, 0xAB, 0x60, 0x13, 0x68, 0x01, 0x20, 0x83, 0x43, 0x13, 0x60,
-0x13, 0x68, 0xAA, 0x68, 0xAB, 0x60, 0xFF, 0xF7, 0xED, 0xFE, 0x54, 0x4B,
-0x1C, 0x22, 0x9A, 0x56, 0xA9, 0x69, 0x53, 0x4B, 0x12, 0x05, 0xF2, 0x40,
-0x0B, 0x40, 0x13, 0x43, 0xAB, 0x61, 0xFF, 0xF7, 0x61, 0xFE, 0x50, 0x4A,
-0x50, 0x4B, 0x01, 0x21, 0x1A, 0x60, 0x50, 0x4B, 0x08, 0x24, 0x1A, 0x68,
-0x10, 0x20, 0x32, 0x43, 0x1A, 0x60, 0x1A, 0x68, 0xBA, 0x43, 0x1A, 0x60,
-0x4C, 0x4B, 0xC0, 0x22, 0x52, 0x00, 0x99, 0x50, 0x20, 0x21, 0x9F, 0x50,
-0x9E, 0x50, 0x9C, 0x50, 0x98, 0x50, 0x99, 0x50, 0x40, 0x21, 0x99, 0x50,
-0xC0, 0x22, 0xBA, 0x40, 0x98, 0x58, 0xFF, 0x24, 0xA0, 0x43, 0xC0, 0x24,
-0x20, 0x43, 0x98, 0x50, 0x9C, 0x58, 0x43, 0x48, 0x04, 0x40, 0x9C, 0x50,
-0x9C, 0x58, 0x42, 0x48, 0x20, 0x40, 0x80, 0x24, 0x24, 0x04, 0x04, 0x43,
-0x9C, 0x50, 0x9C, 0x58, 0x24, 0x02, 0x24, 0x0A, 0x2C, 0x43, 0x9C, 0x50,
-0xC1, 0x22, 0xBA, 0x40, 0x98, 0x58, 0x04, 0x1C, 0xFF, 0x20, 0x84, 0x43,
-0x0C, 0x43, 0x9C, 0x50, 0x9C, 0x58, 0x37, 0x48, 0x20, 0x40, 0x80, 0x24,
-0x24, 0x02, 0x20, 0x43, 0x98, 0x50, 0x98, 0x58, 0x34, 0x4C, 0x20, 0x40,
-0x98, 0x50, 0x34, 0x4A, 0x10, 0x69, 0x30, 0x43, 0x10, 0x61, 0x62, 0xB6,
-0x08, 0x22, 0x01, 0x20, 0x1E, 0x60, 0x18, 0x60, 0x1F, 0x60, 0x1A, 0x60,
-0x2F, 0x4B, 0x20, 0x20, 0x10, 0x24, 0xDC, 0x67, 0xD8, 0x67, 0xD9, 0x67,
-0xFF, 0xF7, 0x46, 0xFC, 0x21, 0x4C, 0xE0, 0x7D, 0x21, 0x7E, 0xFF, 0xF7,
-0xFB, 0xFA, 0xE3, 0x7C, 0x00, 0x2B, 0x26, 0xD0, 0x1A, 0x4B, 0x01, 0x21,
-0x18, 0x68, 0x27, 0x4A, 0x40, 0x00, 0x40, 0x0E, 0x08, 0x43, 0x19, 0x68,
-0x00, 0x06, 0x11, 0x40, 0x01, 0x43, 0x19, 0x60, 0x19, 0x68, 0x28, 0x69,
-0x29, 0x61, 0x19, 0x68, 0x49, 0x00, 0x49, 0x0E, 0x0F, 0x43, 0x39, 0x06,
-0x1F, 0x68, 0x17, 0x40, 0x0F, 0x43, 0x1F, 0x60, 0x19, 0x68, 0x28, 0x69,
-0x29, 0x61, 0x19, 0x68, 0x49, 0x00, 0x49, 0x0E, 0x0E, 0x43, 0x19, 0x68,
-0x36, 0x06, 0x0A, 0x40, 0x32, 0x43, 0x1A, 0x60, 0x1B, 0x68, 0x2A, 0x69,
-0x2B, 0x61, 0xFF, 0xF7, 0xD4, 0xFE, 0xFF, 0xF7, 0xC1, 0xF8, 0xFF, 0xF7,
-0x0F, 0xF9, 0xFF, 0xF7, 0x7D, 0xF9, 0xFF, 0xF7, 0x65, 0xFB, 0xF8, 0xBD,
-0x14, 0x00, 0x00, 0x20, 0x10, 0x00, 0x00, 0x20, 0x08, 0x00, 0x00, 0x20,
-0x0C, 0x00, 0x00, 0x20, 0xFF, 0xFF, 0x7F, 0xFF, 0xAE, 0x09, 0x00, 0x20,
-0x48, 0x0D, 0x00, 0x20, 0xFF, 0xFF, 0x00, 0xF0, 0xFF, 0xFF, 0xFF, 0x00,
-0x14, 0xE0, 0x00, 0xE0, 0x10, 0xE0, 0x00, 0xE0, 0x00, 0xE1, 0x00, 0xE0,
-0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0x00, 0xED, 0x00, 0xE0,
-0x04, 0xE1, 0x00, 0xE0, 0xFF, 0xFF, 0xFF, 0x80, 0x08, 0xB5, 0x0C, 0x4A,
-0x0C, 0x4B, 0x0D, 0x49, 0x01, 0xE0, 0x01, 0xCA, 0x01, 0xC3, 0x8B, 0x42,
-0xFB, 0xD3, 0x0B, 0x4B, 0x0B, 0x49, 0x00, 0x22, 0x00, 0xE0, 0x04, 0xC3,
-0x8B, 0x42, 0xFC, 0xD3, 0xFF, 0xF7, 0x26, 0xF8, 0x08, 0x4B, 0x00, 0x22,
-0x00, 0xE0, 0x04, 0xC3, 0x83, 0x42, 0xFC, 0xD3, 0x08, 0xBD, 0xC0, 0x46,
-0xFC, 0x59, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x20, 0x5C, 0x00, 0x00, 0x20,
-0x5C, 0x00, 0x00, 0x20, 0xEC, 0x11, 0x00, 0x20, 0x0C, 0x1E, 0x00, 0x20,
-0x00, 0xB5, 0x13, 0x4B, 0x1B, 0x68, 0x01, 0x2B, 0x02, 0xD0, 0x08, 0x2B,
-0x1E, 0xD1, 0x0F, 0xE0, 0x10, 0x4B, 0x11, 0x4A, 0x1A, 0x60, 0x11, 0x4A,
-0x5A, 0x60, 0x11, 0x4A, 0x11, 0x4B, 0x1A, 0x60, 0x11, 0x4B, 0x12, 0x4A,
-0x1A, 0x60, 0x12, 0x4A, 0x5A, 0x60, 0x12, 0x4A, 0x9A, 0x60, 0x0D, 0xE0,
-0x09, 0x4B, 0x08, 0x4A, 0x09, 0x49, 0x13, 0x60, 0x51, 0x60, 0x0A, 0x4A,
-0x13, 0x60, 0x0A, 0x4A, 0x13, 0x60, 0x53, 0x60, 0x93, 0x60, 0x0C, 0x4B,
-0x01, 0x22, 0x1A, 0x70, 0x00, 0xBD, 0xC0, 0x46, 0x50, 0x11, 0x00, 0x20,
-0x68, 0x00, 0x00, 0x20, 0xF9, 0x03, 0x00, 0x00, 0x7D, 0x3F, 0x00, 0x00,
-0xB5, 0x3F, 0x00, 0x00, 0x00, 0x02, 0x00, 0x20, 0x18, 0x00, 0x00, 0x20,
-0xC1, 0x40, 0x00, 0x00, 0xA9, 0x42, 0x00, 0x00, 0x0D, 0x44, 0x00, 0x00,
-0xE4, 0x01, 0x00, 0x20, 0x00, 0xB5, 0x00, 0x23, 0xC2, 0x5C, 0x01, 0x33,
-0x00, 0x2A, 0xFB, 0xD1, 0x01, 0x3B, 0xD8, 0xB2, 0x00, 0xBD, 0xC0, 0x46,
-0xF7, 0xB5, 0x1C, 0x1C, 0x08, 0xAB, 0x1F, 0x78, 0x26, 0x4B, 0x0E, 0x1C,
-0x1B, 0x68, 0x01, 0x21, 0x81, 0x40, 0x0B, 0x42, 0x44, 0xD0, 0x00, 0x2F,
-0x07, 0xD0, 0x04, 0x2C, 0x32, 0xD8, 0x22, 0x4B, 0x19, 0x5D, 0x05, 0x33,
-0x00, 0x91, 0x1F, 0x5D, 0x08, 0xE0, 0x04, 0x2C, 0x2E, 0xD8, 0x1E, 0x4B,
-0x19, 0x1C, 0x0A, 0x31, 0x09, 0x5D, 0x0F, 0x33, 0x1F, 0x5D, 0x00, 0x91,
-0x03, 0x2C, 0x28, 0xD0, 0x00, 0x2C, 0x28, 0xD0, 0x28, 0xE0, 0x3A, 0x20,
-0x21, 0x1C, 0x01, 0xF0, 0x63, 0xFC, 0x86, 0x42, 0x05, 0xDD, 0x6B, 0x46,
-0x1B, 0x78, 0xC0, 0xB2, 0x2B, 0x70, 0x68, 0x70, 0x02, 0xE0, 0x2F, 0x70,
-0x30, 0x1C, 0x6E, 0x70, 0x36, 0x1A, 0x60, 0x43, 0x01, 0x99, 0x00, 0x23,
-0x69, 0x60, 0xAB, 0x60, 0x09, 0x18, 0xF6, 0xB2, 0x01, 0x91, 0xFF, 0xF7,
-0xE3, 0xFA, 0xFF, 0xF7, 0x37, 0xFB, 0x00, 0x28, 0xFB, 0xD1, 0x0B, 0xE0,
-0x0F, 0x23, 0x00, 0x27, 0x00, 0x93, 0x05, 0xE0, 0x0F, 0x21, 0x00, 0x91,
-0x02, 0xE0, 0x02, 0x24, 0x00, 0xE0, 0x01, 0x24, 0x04, 0x4D, 0x01, 0x92,
-0x00, 0x2E, 0xD2, 0xD1, 0xF7, 0xBD, 0xC0, 0x46, 0x58, 0x00, 0x00, 0x20,
-0x73, 0x59, 0x00, 0x00, 0x70, 0x00, 0x00, 0x20, 0x38, 0xB5, 0x11, 0x4B,
-0x01, 0x22, 0x1B, 0x68, 0x82, 0x40, 0x0D, 0x1C, 0x13, 0x42, 0x19, 0xD0,
-0x0E, 0x4C, 0x0B, 0x23, 0x23, 0x70, 0x08, 0x1C, 0xFF, 0xF7, 0x90, 0xFF,
-0x60, 0x70, 0x63, 0x78, 0x07, 0x22, 0x02, 0x33, 0x13, 0x40, 0x93, 0x42,
-0x03, 0xD1, 0x63, 0x78, 0x01, 0x3B, 0xDB, 0xB2, 0x63, 0x70, 0x00, 0x23,
-0x65, 0x60, 0xA3, 0x60, 0xFF, 0xF7, 0xAA, 0xFA, 0xFF, 0xF7, 0xFE, 0xFA,
-0x00, 0x28, 0xFB, 0xD1, 0x38, 0xBD, 0xC0, 0x46, 0x58, 0x00, 0x00, 0x20,
-0x70, 0x00, 0x00, 0x20, 0x1F, 0xB5, 0x0B, 0x4C, 0x6B, 0x46, 0xD8, 0x73,
-0x23, 0x78, 0x00, 0x2B, 0x03, 0xD0, 0x00, 0x20, 0x08, 0x49, 0xFF, 0xF7,
-0xCD, 0xFF, 0x23, 0x78, 0x00, 0x2B, 0x07, 0xD0, 0x6A, 0x46, 0x01, 0x21,
-0x00, 0x20, 0x0F, 0x32, 0x04, 0x23, 0x00, 0x91, 0xFF, 0xF7, 0x6A, 0xFF,
-0x1F, 0xBD, 0xC0, 0x46, 0xEB, 0x01, 0x00, 0x20, 0x87, 0x59, 0x00, 0x00,
-0xF8, 0xB5, 0xFF, 0xF7, 0xD7, 0xFA, 0x00, 0x28, 0x70, 0xD1, 0x39, 0x4B,
-0x1A, 0x68, 0x00, 0x2A, 0x03, 0xDC, 0x38, 0x4B, 0x1B, 0x68, 0x00, 0x2B,
-0x3E, 0xDD, 0x37, 0x49, 0x03, 0x23, 0x0B, 0x70, 0x36, 0x4B, 0x04, 0x33,
-0xDB, 0x7F, 0x1C, 0x1C, 0x9A, 0x42, 0x00, 0xDA, 0xD3, 0xB2, 0x4B, 0x70,
-0x0A, 0x21, 0x8C, 0x46, 0x32, 0x4A, 0x00, 0x23, 0x2D, 0x49, 0x1F, 0xE0,
-0x01, 0x33, 0x03, 0xE0, 0x66, 0x46, 0x5E, 0x43, 0x00, 0x20, 0x76, 0x18,
-0x0A, 0x30, 0x37, 0x18, 0x32, 0x25, 0x7F, 0x5F, 0x00, 0x2F, 0xF3, 0xD0,
-0xA3, 0x42, 0x13, 0xDA, 0x58, 0x00, 0x08, 0x18, 0x80, 0x88, 0xDE, 0x00,
-0x10, 0x70, 0x00, 0xB2, 0x00, 0x12, 0x80, 0x19, 0x50, 0x70, 0x18, 0x1C,
-0x10, 0x30, 0x40, 0x00, 0x08, 0x5A, 0x01, 0x33, 0x90, 0x70, 0x00, 0x0A,
-0xD0, 0x70, 0x04, 0x32, 0xA3, 0x42, 0xDF, 0xDB, 0x1D, 0x4B, 0x1F, 0x4A,
-0x5A, 0x60, 0x00, 0x22, 0x9A, 0x60, 0xFF, 0xF7, 0x3D, 0xFA, 0xFF, 0xF7,
-0x91, 0xFA, 0x00, 0x28, 0xFB, 0xD1, 0x29, 0xE0, 0x1A, 0x4A, 0x53, 0x68,
-0x01, 0x33, 0x25, 0xD0, 0x15, 0x4B, 0x13, 0x21, 0x19, 0x70, 0x11, 0x68,
-0x94, 0x46, 0x59, 0x70, 0x16, 0x4B, 0x14, 0x49, 0x1D, 0x78, 0x03, 0x1C,
-0x0D, 0xE0, 0x23, 0x1C, 0x01, 0xE0, 0x5E, 0x00, 0x66, 0x44, 0x02, 0x30,
-0x34, 0x18, 0x06, 0x22, 0xA7, 0x5E, 0x5C, 0x1C, 0x00, 0x2F, 0xF4, 0xD0,
-0x0B, 0x70, 0x23, 0x1C, 0x01, 0x31, 0x00, 0x20, 0xAB, 0x42, 0xF0, 0xDB,
-0x07, 0x4B, 0x09, 0x4A, 0x98, 0x60, 0x5A, 0x60, 0xFF, 0xF7, 0x12, 0xFA,
-0xFF, 0xF7, 0x66, 0xFA, 0x00, 0x28, 0xFB, 0xD1, 0xF8, 0xBD, 0xC0, 0x46,
-0x9C, 0x0D, 0x00, 0x20, 0x20, 0x01, 0x00, 0x20, 0x70, 0x00, 0x00, 0x20,
-0xAE, 0x09, 0x00, 0x20, 0xF0, 0x09, 0x00, 0x20, 0xE0, 0x00, 0x00, 0x20,
-0x7C, 0x09, 0x00, 0x20, 0x08, 0xB5, 0x64, 0x4B, 0x1B, 0x88, 0x1D, 0x2B,
-0x47, 0xD0, 0x1A, 0xD8, 0x05, 0x2B, 0x00, 0xD1, 0x96, 0xE0, 0x0D, 0xD8,
-0x02, 0x2B, 0x63, 0xD0, 0x03, 0xD8, 0x01, 0x2B, 0x00, 0xD0, 0xB7, 0xE0,
-0x57, 0xE0, 0x03, 0x2B, 0x00, 0xD1, 0x87, 0xE0, 0x04, 0x2B, 0x00, 0xD0,
-0xB0, 0xE0, 0x8F, 0xE0, 0x07, 0x2B, 0x65, 0xD0, 0x5C, 0xD3, 0x1B, 0x2B,
-0x1C, 0xD0, 0x1C, 0x2B, 0x00, 0xD0, 0xA7, 0xE0, 0x22, 0xE0, 0x22, 0x2B,
-0x40, 0xD0, 0x08, 0xD8, 0x1F, 0x2B, 0x5D, 0xD0, 0x2A, 0xD3, 0x20, 0x2B,
-0x5E, 0xD0, 0x21, 0x2B, 0x00, 0xD0, 0x9B, 0xE0, 0x5E, 0xE0, 0x41, 0x2B,
-0x64, 0xD0, 0x03, 0xD8, 0x40, 0x2B, 0x00, 0xD0, 0x94, 0xE0, 0x5B, 0xE0,
-0x42, 0x2B, 0x61, 0xD0, 0x60, 0x2B, 0x00, 0xD0, 0x8E, 0xE0, 0x72, 0xE0,
-0x48, 0x4A, 0x49, 0x4B, 0x12, 0x78, 0x01, 0x20, 0x19, 0x68, 0x90, 0x40,
-0x02, 0x1C, 0x0A, 0x43, 0x1A, 0x60, 0x83, 0xE0, 0x43, 0x49, 0x44, 0x4B,
-0x09, 0x78, 0x1A, 0x68, 0x01, 0x20, 0x88, 0x40, 0x82, 0x43, 0x1A, 0x60,
-0x7A, 0xE0, 0x3F, 0x4B, 0x1A, 0x78, 0x40, 0x4B, 0x1A, 0x70, 0x75, 0xE0,
-0x3C, 0x4B, 0x0D, 0x21, 0x1A, 0x78, 0x3E, 0x4B, 0x1A, 0x70, 0x3C, 0x4A,
-0x11, 0x70, 0x1A, 0x78, 0x3C, 0x4B, 0x00, 0x2A, 0x02, 0xD0, 0x00, 0x22,
-0x5A, 0x70, 0x67, 0xE0, 0x3A, 0x4A, 0x52, 0x78, 0x5A, 0x70, 0x63, 0xE0,
-0x33, 0x4B, 0x1A, 0x78, 0x38, 0x4B, 0x1A, 0x70, 0x5E, 0xE0, 0x31, 0x4B,
-0x1A, 0x78, 0x37, 0x4B, 0x1A, 0x60, 0xFD, 0xF7, 0x09, 0xFC, 0x57, 0xE0,
-0x2D, 0x4B, 0x1A, 0x78, 0x34, 0x4B, 0x9A, 0x70, 0x98, 0x78, 0xFF, 0xF7,
-0x8D, 0xFC, 0x4F, 0xE0, 0x29, 0x4B, 0x1A, 0x78, 0x30, 0x4B, 0x9A, 0x70,
-0x29, 0x4B, 0x0F, 0x22, 0x1A, 0x70, 0x47, 0xE0, 0x2E, 0x4B, 0x01, 0x22,
-0x1A, 0x70, 0x43, 0xE0, 0x2D, 0x4B, 0x01, 0x22, 0x1A, 0x70, 0x3F, 0xE0,
-0x0C, 0x20, 0xFD, 0xF7, 0x85, 0xF9, 0x3B, 0xE0, 0x0D, 0x20, 0xFD, 0xF7,
-0x81, 0xF9, 0x37, 0xE0, 0x28, 0x4B, 0x01, 0x22, 0x1A, 0x70, 0x33, 0xE0,
-0x27, 0x4B, 0x01, 0x22, 0x1A, 0x70, 0x2F, 0xE0, 0x26, 0x4B, 0x01, 0x22,
-0x1A, 0x70, 0x2B, 0xE0, 0x25, 0x4B, 0x01, 0x22, 0x1A, 0x70, 0x27, 0xE0,
-0x24, 0x4B, 0x01, 0x22, 0x1A, 0x70, 0x14, 0x4B, 0x1A, 0x78, 0x23, 0x4B,
-0x1A, 0x70, 0x1F, 0xE0, 0x11, 0x4B, 0x1A, 0x78, 0x1E, 0x4B, 0x9A, 0x70,
-0x1A, 0xE0, 0x0F, 0x4B, 0x1A, 0x78, 0x1F, 0x4B, 0x1A, 0x70, 0x1A, 0x78,
-0x10, 0x4B, 0x01, 0x3A, 0x01, 0x2A, 0x03, 0xD8, 0x40, 0x33, 0x0F, 0x22,
-0x1A, 0x70, 0x0D, 0xE0, 0x1A, 0x4A, 0x40, 0x33, 0x12, 0x78, 0x00, 0x2A,
-0x04, 0xD0, 0x19, 0x4A, 0x40, 0x32, 0x12, 0x78, 0x1A, 0x70, 0x03, 0xE0,
-0x08, 0x4A, 0x40, 0x32, 0x12, 0x78, 0x1A, 0x70, 0x08, 0xBD, 0xC0, 0x46,
-0x28, 0x00, 0x00, 0x20, 0x0C, 0x00, 0x00, 0x50, 0x58, 0x00, 0x00, 0x20,
-0x1D, 0x03, 0x00, 0x20, 0xE3, 0x01, 0x00, 0x20, 0x48, 0x0D, 0x00, 0x20,
-0x4A, 0x74, 0x00, 0x00, 0xDE, 0x01, 0x00, 0x20, 0x50, 0x11, 0x00, 0x20,
-0xAA, 0x0A, 0x00, 0x20, 0xE4, 0x01, 0x00, 0x20, 0xDC, 0x01, 0x00, 0x20,
-0xE8, 0x01, 0x00, 0x20, 0xE7, 0x01, 0x00, 0x20, 0xE5, 0x01, 0x00, 0x20,
-0x8B, 0x01, 0x00, 0x20, 0xE6, 0x01, 0x00, 0x20, 0x92, 0x01, 0x00, 0x20,
-0xE0, 0x01, 0x00, 0x20, 0xDD, 0x01, 0x00, 0x20, 0x9A, 0x74, 0x00, 0x00,
-0x30, 0xB5, 0x4A, 0x4B, 0x1B, 0x88, 0x34, 0x2B, 0x47, 0xD0, 0x0C, 0xD8,
-0x2E, 0x2B, 0x4F, 0xD0, 0x04, 0xD8, 0x00, 0x2B, 0x14, 0xD0, 0x1D, 0x2B,
-0x78, 0xD1, 0x16, 0xE0, 0x2F, 0x2B, 0x51, 0xD0, 0x30, 0x2B, 0x73, 0xD1,
-0x56, 0xE0, 0x38, 0x2B, 0x66, 0xD0, 0x04, 0xD8, 0x35, 0x2B, 0x39, 0xD0,
-0x37, 0x2B, 0x6B, 0xD1, 0x5B, 0xE0, 0x39, 0x2B, 0x63, 0xD0, 0x86, 0x2B,
-0x66, 0xD1, 0x09, 0xE0, 0x3B, 0x4B, 0x5A, 0x7B, 0x3B, 0x4B, 0x1A, 0x70,
-0x6F, 0xE0, 0x3B, 0x4B, 0x1A, 0x78, 0x39, 0x4B, 0x1A, 0x70, 0x6A, 0xE0,
-0x39, 0x49, 0x3A, 0x4A, 0x0B, 0x78, 0x00, 0x2B, 0x0F, 0xD1, 0x10, 0x78,
-0x34, 0x49, 0x08, 0x70, 0x50, 0x78, 0x37, 0x49, 0x08, 0x70, 0x52, 0x68,
-0xD1, 0x18, 0x36, 0x4C, 0x08, 0x78, 0x19, 0x19, 0x01, 0x33, 0x08, 0x70,
-0x06, 0x2B, 0xF7, 0xD1, 0x55, 0xE0, 0x52, 0x68, 0x00, 0x23, 0x08, 0x78,
-0x2B, 0x4D, 0xC0, 0x18, 0x02, 0x38, 0x10, 0x18, 0x04, 0x78, 0x58, 0x19,
-0x01, 0x33, 0x04, 0x70, 0x08, 0x2B, 0xF4, 0xD1, 0x47, 0xE0, 0x2C, 0x4B,
-0x1A, 0x68, 0x25, 0x4B, 0x1A, 0x60, 0x42, 0xE0, 0x80, 0x23, 0xDB, 0x05,
-0x1A, 0x79, 0x22, 0x4B, 0x1A, 0x70, 0x3C, 0xE0, 0x22, 0x4B, 0x27, 0x4A,
-0x1B, 0x78, 0x1F, 0x49, 0xD3, 0x18, 0x1A, 0x68, 0x5B, 0x68, 0x0A, 0x60,
-0x4B, 0x60, 0x32, 0xE0, 0x1A, 0x4B, 0x1A, 0x1C, 0x2C, 0x32, 0x11, 0x78,
-0x19, 0x4A, 0x00, 0x29, 0x07, 0xD1, 0x09, 0xE0, 0x16, 0x4B, 0x1A, 0x1C,
-0x2C, 0x32, 0x11, 0x78, 0x15, 0x4A, 0x00, 0x29, 0x02, 0xD1, 0xDB, 0x8C,
-0x13, 0x80, 0x20, 0xE0, 0x1B, 0x8D, 0x13, 0x80, 0x1D, 0xE0, 0x19, 0x4B,
-0x1A, 0x78, 0x10, 0x4B, 0x1A, 0x70, 0x18, 0xE0, 0x17, 0x4B, 0x1A, 0x78,
-0x0D, 0x4B, 0x1A, 0x70, 0x13, 0xE0, 0x16, 0x4B, 0x1A, 0x78, 0x0B, 0x4B,
-0x1A, 0x70, 0x0E, 0xE0, 0x90, 0x3B, 0x9A, 0xB2, 0x13, 0x2A, 0x0A, 0xD8,
-0x09, 0x4A, 0x5B, 0x01, 0x12, 0x78, 0x06, 0x49, 0x9B, 0x18, 0x10, 0x4A,
-0x9B, 0x18, 0x1A, 0x68, 0x5B, 0x68, 0x0A, 0x60, 0x4B, 0x60, 0x30, 0xBD,
-0x28, 0x00, 0x00, 0x20, 0xAE, 0x09, 0x00, 0x20, 0x0C, 0x00, 0x00, 0x50,
-0x1D, 0x03, 0x00, 0x20, 0x2A, 0x00, 0x00, 0x20, 0x70, 0x00, 0x00, 0x20,
-0x0D, 0x00, 0x00, 0x50, 0x0E, 0x00, 0x00, 0x50, 0x1C, 0x09, 0x00, 0x20,
-0xB1, 0x09, 0x00, 0x20, 0xFF, 0x5B, 0x00, 0x00, 0xFF, 0x73, 0x00, 0x00,
-0xFF, 0x7B, 0x00, 0x00, 0xB3, 0x0A, 0x00, 0x20, 0x08, 0xB5, 0x08, 0x4B,
-0x1B, 0x88, 0x86, 0x2B, 0x0B, 0xD1, 0x07, 0x4B, 0x9A, 0x68, 0x01, 0x2A,
-0x02, 0xDC, 0x9A, 0x68, 0x01, 0x32, 0x9A, 0x60, 0x9B, 0x68, 0x02, 0x2B,
-0x01, 0xD1, 0xFF, 0xF7, 0x71, 0xF8, 0x08, 0xBD, 0x28, 0x00, 0x00, 0x20,
-0x70, 0x00, 0x00, 0x20, 0x7F, 0xB5, 0x31, 0x4C, 0x03, 0x90, 0x23, 0x78,
-0x0D, 0x1C, 0x16, 0x1C, 0x00, 0x2B, 0x03, 0xD0, 0x01, 0x20, 0x2E, 0x49,
-0xFF, 0xF7, 0x6E, 0xFD, 0x23, 0x78, 0x00, 0x2B, 0x06, 0xD0, 0x01, 0x21,
-0x08, 0x1C, 0x03, 0xAA, 0x04, 0x23, 0x00, 0x91, 0xFF, 0xF7, 0x0C, 0xFD,
-0x28, 0x4B, 0x03, 0x99, 0x1B, 0x78, 0x28, 0x4A, 0x00, 0x2B, 0x15, 0xD1,
-0x13, 0x1C, 0x4A, 0x33, 0x00, 0x20, 0x1B, 0x5E, 0x8E, 0x1B, 0x9E, 0x42,
-0x05, 0xDC, 0x13, 0x1C, 0x4C, 0x33, 0x00, 0x20, 0x1B, 0x5E, 0x9E, 0x42,
-0x08, 0xDA, 0x21, 0x48, 0x01, 0x23, 0x03, 0x70, 0x20, 0x48, 0x03, 0x70,
-0x20, 0x48, 0x03, 0x70, 0x20, 0x48, 0x03, 0x70, 0x53, 0x78, 0x00, 0x2B,
-0x04, 0xD0, 0x1F, 0x4B, 0x5B, 0x5D, 0x59, 0x43, 0x89, 0x11, 0x03, 0x91,
-0x1D, 0x4B, 0x6A, 0x00, 0xD0, 0x5A, 0x1D, 0x4B, 0x03, 0x99, 0xD4, 0x5E,
-0xC0, 0x08, 0x14, 0x4A, 0x89, 0xB2, 0x04, 0x1B, 0x64, 0x1A, 0x56, 0x7C,
-0x24, 0xB2, 0x19, 0x4B, 0xB4, 0x42, 0x02, 0xDC, 0x76, 0x42, 0xB4, 0x42,
-0x02, 0xDA, 0x00, 0x24, 0x5C, 0x55, 0x05, 0xE0, 0x5C, 0x5D, 0x96, 0x7C,
-0xA6, 0x42, 0x01, 0xD0, 0x01, 0x34, 0x5C, 0x55, 0x43, 0x1A, 0x9B, 0xB2,
-0x92, 0x7E, 0x19, 0xB2, 0x91, 0x42, 0x02, 0xDB, 0x09, 0x4A, 0x01, 0x21,
-0x11, 0x70, 0x0C, 0x4A, 0x6D, 0x00, 0xAB, 0x52, 0x7F, 0xBD, 0xC0, 0x46,
-0xEB, 0x01, 0x00, 0x20, 0x8B, 0x59, 0x00, 0x00, 0xE4, 0x01, 0x00, 0x20,
-0x48, 0x0D, 0x00, 0x20, 0x48, 0x11, 0x00, 0x20, 0x14, 0x09, 0x00, 0x20,
-0x30, 0x11, 0x00, 0x20, 0xC4, 0x01, 0x00, 0x20, 0x92, 0x7B, 0x00, 0x00,
-0x14, 0x02, 0x00, 0x20, 0x3C, 0x0D, 0x00, 0x20, 0xA4, 0x0A, 0x00, 0x20,
-0xF0, 0xB5, 0x48, 0x4B, 0x89, 0xB0, 0x1B, 0x78, 0x00, 0x2B, 0x03, 0xD0,
-0x00, 0x20, 0x46, 0x49, 0xFF, 0xF7, 0xF4, 0xFC, 0x45, 0x4A, 0x00, 0x23,
-0x13, 0x70, 0x45, 0x4A, 0x0C, 0x20, 0x01, 0x38, 0xC0, 0xB2, 0x81, 0x00,
-0x8B, 0x50, 0x00, 0x28, 0xF9, 0xD1, 0x42, 0x4B, 0x42, 0x4A, 0x18, 0x70,
-0x01, 0x23, 0x13, 0x70, 0x41, 0x4A, 0x13, 0x70, 0x41, 0x4B, 0x19, 0x7E,
-0x04, 0x91, 0xDA, 0x7D, 0x05, 0x92, 0x1B, 0x7D, 0x06, 0x93, 0x0B, 0x1C,
-0x2D, 0xE0, 0x01, 0x3B, 0xDB, 0xB2, 0x5D, 0x1C, 0x3C, 0x4C, 0xEA, 0x01,
-0x12, 0x19, 0x16, 0x88, 0x3B, 0x49, 0x5A, 0x00, 0x5C, 0x01, 0x56, 0x52,
-0xAD, 0x01, 0x05, 0x9A, 0x07, 0x94, 0x9C, 0x46, 0x1A, 0xE0, 0x01, 0x3A,
-0xD2, 0xB2, 0x93, 0x1C, 0xEB, 0x18, 0x36, 0x4C, 0x5B, 0x00, 0x19, 0x5B,
-0x06, 0x9B, 0x00, 0x2B, 0x05, 0xD0, 0xD3, 0x1C, 0xEB, 0x18, 0x5B, 0x00,
-0x1B, 0x5B, 0xC9, 0x18, 0x49, 0x10, 0x07, 0x9C, 0xA7, 0x18, 0x7B, 0x00,
-0x1C, 0x1C, 0x2F, 0x4B, 0xE1, 0x52, 0x2F, 0x4C, 0x01, 0x23, 0x89, 0x1B,
-0x3B, 0x55, 0x40, 0x18, 0x00, 0x2A, 0xE2, 0xD1, 0x63, 0x46, 0x00, 0x2B,
-0xCF, 0xD1, 0x25, 0x4B, 0x04, 0x9C, 0xD9, 0x7D, 0x61, 0x43, 0x01, 0xF0,
-0xD5, 0xF8, 0x28, 0x4B, 0x05, 0x1C, 0x58, 0x8C, 0x27, 0x4C, 0x00, 0x28,
-0x02, 0xD1, 0x40, 0x23, 0x23, 0x60, 0x07, 0xE0, 0x80, 0x01, 0x29, 0x1C,
-0x01, 0xF0, 0xC8, 0xF8, 0x6E, 0x28, 0x00, 0xDD, 0x6E, 0x20, 0x20, 0x60,
-0x12, 0x4C, 0x23, 0x78, 0x00, 0x2B, 0x03, 0xD0, 0x00, 0x20, 0x1F, 0x49,
-0xFF, 0xF7, 0x8A, 0xFC, 0x1B, 0x4B, 0x1E, 0x4A, 0x5B, 0x8C, 0x55, 0x80,
-0x13, 0x80, 0x23, 0x78, 0x00, 0x2B, 0x06, 0xD0, 0x01, 0x23, 0x02, 0x21,
-0x00, 0x93, 0x00, 0x20, 0x0B, 0x1C, 0xFF, 0xF7, 0x23, 0xFC, 0x18, 0x4B,
-0x18, 0x48, 0x1B, 0x78, 0x00, 0x22, 0x18, 0x49, 0x04, 0xE0, 0x01, 0x3B,
-0xDB, 0xB2, 0x5C, 0x00, 0xC2, 0x54, 0x62, 0x52, 0x00, 0x2B, 0xF8, 0xD1,
-0x09, 0xB0, 0xF0, 0xBD, 0xEB, 0x01, 0x00, 0x20, 0x91, 0x59, 0x00, 0x00,
-0x1C, 0x03, 0x00, 0x20, 0xBC, 0x11, 0x00, 0x20, 0xF4, 0x10, 0x00, 0x20,
-0x20, 0x09, 0x00, 0x20, 0x3C, 0x11, 0x00, 0x20, 0xAE, 0x09, 0x00, 0x20,
-0x02, 0x40, 0x00, 0x40, 0x94, 0x11, 0x00, 0x20, 0x00, 0x40, 0x00, 0x40,
-0xF8, 0x03, 0x00, 0x20, 0xB3, 0x0A, 0x00, 0x20, 0x48, 0x0D, 0x00, 0x20,
-0x78, 0x09, 0x00, 0x20, 0x9A, 0x59, 0x00, 0x00, 0x54, 0x11, 0x00, 0x20,
-0x7C, 0x09, 0x00, 0x20, 0xA4, 0x0A, 0x00, 0x20, 0x14, 0x02, 0x00, 0x20,
-0xF0, 0xB5, 0xA0, 0x4A, 0x00, 0x23, 0x13, 0x70, 0x9F, 0x4A, 0x85, 0xB0,
-0x13, 0x70, 0x9F, 0x4A, 0x13, 0x70, 0x9F, 0x4A, 0x13, 0x70, 0x9F, 0x4B,
-0x1B, 0x78, 0x00, 0x2B, 0x03, 0xD0, 0x01, 0x20, 0x9D, 0x49, 0xFF, 0xF7,
-0x31, 0xFC, 0x00, 0x24, 0x9C, 0x4D, 0x9A, 0x4E, 0x11, 0xE0, 0x33, 0x78,
-0x00, 0x2B, 0x0C, 0xD0, 0xEB, 0x7D, 0x29, 0x7D, 0x99, 0x48, 0xC9, 0x18,
-0xE2, 0x01, 0x00, 0x23, 0x12, 0x18, 0x00, 0x93, 0xC9, 0xB2, 0x01, 0x20,
-0x02, 0x23, 0xFF, 0xF7, 0xC5, 0xFB, 0x01, 0x34, 0xE4, 0xB2, 0x29, 0x7E,
-0x8C, 0x42, 0xEA, 0xD3, 0x92, 0x4B, 0x1B, 0x78, 0x00, 0x2B, 0x00, 0xD1,
-0x0D, 0xE1, 0x91, 0x4B, 0x1A, 0x78, 0x00, 0x2A, 0x1F, 0xD1, 0x90, 0x4B,
-0x1B, 0x78, 0x00, 0x2B, 0x1B, 0xD0, 0xEB, 0x7D, 0x8E, 0x4C, 0x07, 0xE0,
-0x01, 0x3B, 0xDB, 0xB2, 0x5D, 0x01, 0x2D, 0x18, 0x2A, 0x55, 0x00, 0x2B,
-0xF8, 0xD1, 0x03, 0x1C, 0x58, 0x1E, 0xC0, 0xB2, 0x00, 0x2B, 0x01, 0xD0,
-0x0B, 0x1C, 0xF6, 0xE7, 0x87, 0x4A, 0x86, 0x48, 0x12, 0x78, 0x49, 0x01,
-0x03, 0xE0, 0x01, 0x3A, 0xD2, 0xB2, 0x8C, 0x18, 0x23, 0x54, 0x00, 0x2A,
-0xF9, 0xD1, 0x80, 0x4B, 0x7E, 0x4A, 0x19, 0x78, 0x1B, 0x78, 0x11, 0x70,
-0x00, 0x2B, 0x70, 0xD0, 0x78, 0x4B, 0x1A, 0x7E, 0xD9, 0x7D, 0x02, 0x92,
-0x1B, 0x7D, 0x03, 0x93, 0x22, 0xE0, 0x01, 0x3B, 0xDB, 0xB2, 0x59, 0x1C,
-0x89, 0x01, 0xC8, 0x19, 0x79, 0x4C, 0x03, 0x9D, 0x40, 0x00, 0x00, 0x5B,
-0x00, 0x2D, 0x04, 0xD0, 0x89, 0x19, 0x49, 0x00, 0x09, 0x5B, 0x40, 0x18,
-0x40, 0x10, 0x59, 0x01, 0x89, 0x18, 0x74, 0x4D, 0x4C, 0x00, 0x65, 0x5B,
-0x6F, 0x4C, 0xED, 0x08, 0x0C, 0x5D, 0x28, 0x1A, 0x84, 0x42, 0x04, 0xDA,
-0xFF, 0x28, 0x00, 0xDD, 0xFF, 0x20, 0x6B, 0x4D, 0x68, 0x54, 0x00, 0x2B,
-0xDD, 0xD1, 0x11, 0x1C, 0x4A, 0x1E, 0xD2, 0xB2, 0x00, 0x29, 0x03, 0xD0,
-0x02, 0x9B, 0x97, 0x1C, 0xD6, 0x1C, 0xF4, 0xE7, 0x5F, 0x4A, 0x65, 0x4B,
-0x17, 0x7E, 0x1B, 0x78, 0x62, 0x49, 0x7F, 0x01, 0x10, 0xE0, 0x01, 0x3B,
-0xDB, 0xB2, 0x64, 0x4E, 0x5A, 0x00, 0x94, 0x5B, 0xF8, 0x18, 0x45, 0x56,
-0x26, 0xB2, 0x2A, 0x1C, 0xB5, 0x42, 0x00, 0xDA, 0x22, 0x1C, 0x12, 0xB2,
-0xFF, 0x2A, 0x00, 0xDD, 0xFF, 0x22, 0x42, 0x54, 0x00, 0x2B, 0xEC, 0xD1,
-0x50, 0x4B, 0x1B, 0x78, 0x00, 0x2B, 0x03, 0xD0, 0x03, 0x20, 0x5A, 0x49,
-0xFF, 0xF7, 0x94, 0xFB, 0x00, 0x24, 0x4E, 0x4D, 0x4B, 0x4E, 0x0E, 0xE0,
-0x33, 0x78, 0x00, 0x2B, 0x09, 0xD0, 0x50, 0x4B, 0x62, 0x01, 0xD2, 0x18,
-0x00, 0x23, 0xE9, 0x7D, 0x03, 0x20, 0x00, 0x93, 0x01, 0x23, 0xFF, 0xF7,
-0x2B, 0xFB, 0x01, 0x34, 0xE4, 0xB2, 0x2B, 0x7E, 0xA3, 0x42, 0xED, 0xD8,
-0x40, 0x4A, 0x01, 0x23, 0x13, 0x70, 0x3D, 0x4A, 0x13, 0x70, 0x3B, 0x4A,
-0x13, 0x70, 0x3E, 0x4B, 0x1B, 0x78, 0x00, 0x2B, 0x6D, 0xD0, 0x49, 0x4B,
-0x1B, 0x68, 0x58, 0x02, 0x69, 0xD5, 0x3C, 0x4A, 0x80, 0x24, 0x16, 0x7D,
-0x13, 0x7E, 0xD2, 0x7D, 0x45, 0x4D, 0xB6, 0x18, 0xF6, 0xB2, 0x24, 0x06,
-0xB4, 0x46, 0x18, 0xE0, 0x01, 0x3B, 0xDB, 0xB2, 0x42, 0x49, 0x5A, 0x00,
-0x5F, 0x1C, 0x56, 0x5A, 0xBF, 0x01, 0x62, 0x46, 0x0D, 0xE0, 0x01, 0x3A,
-0xD2, 0xB2, 0x91, 0x1C, 0x79, 0x18, 0x37, 0x48, 0x49, 0x00, 0x09, 0x5A,
-0x89, 0x1B, 0x8C, 0x42, 0x00, 0xDA, 0x0C, 0x1C, 0x8D, 0x42, 0x00, 0xDD,
-0x0D, 0x1C, 0x00, 0x2A, 0xEF, 0xD1, 0x00, 0x2B, 0xE4, 0xD1, 0x16, 0x20,
-0x36, 0x49, 0xFF, 0xF7, 0x45, 0xFB, 0x25, 0x4B, 0x35, 0x4A, 0x1B, 0x78,
-0x14, 0x80, 0x55, 0x80, 0x00, 0x2B, 0x06, 0xD0, 0x01, 0x23, 0x02, 0x21,
-0x00, 0x93, 0x16, 0x20, 0x0B, 0x1C, 0xFF, 0xF7, 0xDF, 0xFA, 0x26, 0x4B,
-0x80, 0x20, 0x1B, 0x78, 0x2A, 0x49, 0x00, 0x06, 0x2D, 0x4E, 0x2E, 0x4D,
-0x19, 0xE0, 0x01, 0x3B, 0xDB, 0xB2, 0xF7, 0x5C, 0x7A, 0x1C, 0x94, 0x46,
-0x64, 0x46, 0xEA, 0x5C, 0xA4, 0x01, 0xA4, 0x46, 0x02, 0x32, 0x62, 0x44,
-0x1D, 0x4C, 0x52, 0x00, 0x12, 0x5B, 0x22, 0x4C, 0x7F, 0x00, 0x94, 0x46,
-0x3A, 0x5B, 0x64, 0x46, 0xA2, 0x1A, 0x90, 0x42, 0x00, 0xDA, 0x10, 0x1C,
-0x91, 0x42, 0x00, 0xDD, 0x11, 0x1C, 0x00, 0x2B, 0xE3, 0xD1, 0x0C, 0x4B,
-0x1C, 0x4A, 0x1B, 0x78, 0x10, 0x80, 0x51, 0x80, 0x00, 0x2B, 0x06, 0xD0,
-0x01, 0x23, 0x02, 0x21, 0x00, 0x93, 0x16, 0x20, 0x0B, 0x1C, 0xFF, 0xF7,
-0xAD, 0xFA, 0x05, 0xB0, 0xF0, 0xBD, 0xC0, 0x46, 0xAC, 0x09, 0x00, 0x20,
-0x14, 0x09, 0x00, 0x20, 0x30, 0x11, 0x00, 0x20, 0x48, 0x11, 0x00, 0x20,
-0xEB, 0x01, 0x00, 0x20, 0xAB, 0x59, 0x00, 0x00, 0xAE, 0x09, 0x00, 0x20,
-0x84, 0x40, 0x00, 0x40, 0x1C, 0x03, 0x00, 0x20, 0xE1, 0x01, 0x00, 0x20,
-0xE3, 0x01, 0x00, 0x20, 0x64, 0x0E, 0x00, 0x20, 0x7C, 0x09, 0x00, 0x20,
-0x00, 0x40, 0x00, 0x40, 0xF8, 0x03, 0x00, 0x20, 0x3C, 0x0D, 0x00, 0x20,
-0xAF, 0x59, 0x00, 0x00, 0x58, 0x00, 0x00, 0x20, 0xFF, 0xFF, 0xFF, 0x7F,
-0x94, 0x11, 0x00, 0x20, 0xB5, 0x59, 0x00, 0x00, 0x54, 0x11, 0x00, 0x20,
-0x30, 0x75, 0x00, 0x00, 0x2A, 0x75, 0x00, 0x00, 0xF0, 0xB5, 0xB3, 0x4B,
-0xA5, 0xB0, 0x1B, 0x78, 0x00, 0x2B, 0x00, 0xD0, 0x01, 0xE2, 0xB1, 0x4A,
-0xB1, 0x4C, 0x12, 0x78, 0xB1, 0x4D, 0xB2, 0x4E, 0x64, 0x7C, 0x52, 0xB2,
-0x6B, 0x60, 0x2B, 0x60, 0x6B, 0x82, 0x6B, 0x81, 0x2B, 0x82, 0x2B, 0x81,
-0x33, 0x60, 0xB3, 0x60, 0x1B, 0x92, 0xAD, 0x4F, 0xFF, 0x22, 0xAD, 0x4B,
-0x72, 0x60, 0xF2, 0x60, 0x11, 0x94, 0x3F, 0x7E, 0x1B, 0x78, 0xA9, 0x4C,
-0x09, 0x97, 0x0B, 0x93, 0xE4, 0x7D, 0xA4, 0x4D, 0x08, 0x94, 0x46, 0x23,
-0xED, 0x5E, 0xA2, 0x4F, 0x0E, 0x95, 0x48, 0x23, 0xFF, 0x5E, 0xA3, 0x4C,
-0x0F, 0x97, 0x24, 0x7D, 0x2D, 0x23, 0x0C, 0x94, 0x9D, 0x4D, 0xA2, 0x4E,
-0x11, 0x9F, 0x6D, 0x78, 0x36, 0x68, 0x7F, 0x42, 0x9A, 0x4C, 0x0D, 0x95,
-0x12, 0x96, 0x1D, 0x97, 0xA4, 0x7C, 0x98, 0x4D, 0x22, 0x94, 0xEB, 0x5C,
-0x1B, 0x9E, 0x13, 0x93, 0x10, 0x23, 0x9B, 0x1B, 0x1E, 0x93, 0x18, 0x27,
-0xEF, 0x57, 0x1C, 0x20, 0x14, 0x97, 0x28, 0x56, 0x19, 0x21, 0x18, 0x90,
-0x69, 0x56, 0x00, 0x23, 0x00, 0x22, 0x00, 0x24, 0x23, 0x91, 0x05, 0x93,
-0x00, 0x25, 0x00, 0x26, 0x00, 0x27, 0xFF, 0x20, 0x00, 0x21, 0xFF, 0x23,
-0x06, 0x92, 0x17, 0x94, 0x10, 0x95, 0x1A, 0x96, 0x15, 0x97, 0x19, 0x90,
-0x21, 0x91, 0x1F, 0x92, 0x16, 0x93, 0x1C, 0x94, 0x09, 0x9C, 0x00, 0x2C,
-0x00, 0xD1, 0x27, 0xE1, 0x09, 0x9B, 0x89, 0x4D, 0x01, 0x3B, 0xDB, 0xB2,
-0x09, 0x93, 0x5B, 0x00, 0x5B, 0x5B, 0x08, 0x9E, 0x0A, 0x93, 0x00, 0x2E,
-0xF0, 0xD0, 0x09, 0x9F, 0x84, 0x48, 0x01, 0x37, 0xFB, 0x01, 0x1B, 0x18,
-0x1B, 0x88, 0x0A, 0x99, 0x0E, 0x9C, 0x5A, 0x1A, 0x94, 0x42, 0x00, 0xDA,
-0x92, 0xE1, 0x0F, 0x9D, 0x95, 0x42, 0x00, 0xDD, 0x8B, 0xE1, 0x09, 0x9E,
-0xBF, 0x01, 0x01, 0x21, 0x02, 0x25, 0x00, 0x22, 0x70, 0x01, 0x03, 0x97,
-0x2C, 0xE0, 0x7A, 0x4D, 0x84, 0x18, 0x64, 0x00, 0x6E, 0x46, 0x18, 0x27,
-0x2C, 0x5B, 0xBD, 0x5F, 0xE4, 0x1A, 0xAC, 0x42, 0x01, 0xDD, 0xA7, 0xB2,
-0x06, 0x97, 0x6E, 0x46, 0x14, 0x27, 0xBD, 0x5F, 0xAC, 0x42, 0x01, 0xDA,
-0xA4, 0xB2, 0x05, 0x94, 0x82, 0x18, 0x70, 0x4F, 0x52, 0x00, 0xBB, 0x52,
-0x08, 0x9A, 0xCB, 0xB2, 0x9A, 0x42, 0xBD, 0xD9, 0x03, 0x9A, 0x8D, 0x1C,
-0x53, 0x19, 0x6C, 0x4C, 0x5B, 0x00, 0x1B, 0x5B, 0x0A, 0x9E, 0x0E, 0x9F,
-0x0A, 0x1C, 0x9C, 0x1B, 0xBC, 0x42, 0x00, 0xDD, 0x38, 0xE1, 0x0F, 0x9E,
-0x01, 0x31, 0xB4, 0x42, 0x00, 0xDA, 0xD1, 0xE0, 0x0C, 0x9F, 0x00, 0x2F,
-0x07, 0xD0, 0x03, 0x9E, 0xD4, 0x1C, 0x34, 0x19, 0x61, 0x4F, 0x64, 0x00,
-0xE4, 0x5B, 0xE3, 0x18, 0x5B, 0x10, 0x0D, 0x9C, 0x00, 0x2C, 0x06, 0xD0,
-0x5E, 0x4E, 0x84, 0x18, 0xA4, 0x5D, 0x12, 0x9F, 0x63, 0x43, 0x7B, 0x43,
-0x1B, 0x13, 0x0B, 0x9C, 0x00, 0x2C, 0xBA, 0xD0, 0x86, 0x18, 0x57, 0x4F,
-0x74, 0x00, 0x3F, 0x5B, 0xBC, 0x46, 0x58, 0x4F, 0xBC, 0x57, 0x66, 0x46,
-0xF6, 0x08, 0x34, 0x1B, 0x07, 0x94, 0x6F, 0x46, 0x18, 0x24, 0x04, 0x96,
-0xE7, 0x5F, 0x07, 0x9E, 0xF4, 0x1A, 0xBC, 0x42, 0x01, 0xDD, 0xA7, 0xB2,
-0x06, 0x97, 0x6E, 0x46, 0x14, 0x27, 0xBE, 0x5F, 0xB4, 0x42, 0x01, 0xDA,
-0xA6, 0xB2, 0x05, 0x96, 0x11, 0x9F, 0xBC, 0x42, 0x5D, 0xDD, 0x84, 0x18,
-0xA4, 0x46, 0x4B, 0x4C, 0x00, 0x27, 0x66, 0x46, 0x37, 0x55, 0x04, 0x9F,
-0x13, 0x9E, 0xFC, 0x1A, 0x00, 0x2E, 0x08, 0xD0, 0x1B, 0x9F, 0x07, 0x9C,
-0x1E, 0x9E, 0x7B, 0x43, 0x74, 0x43, 0x04, 0x9F, 0x1C, 0x19, 0x24, 0x11,
-0x3C, 0x1B, 0x23, 0x1C, 0x7F, 0x33, 0x17, 0xDA, 0x3F, 0x4E, 0x82, 0x18,
-0x80, 0x23, 0xB3, 0x54, 0x23, 0x9A, 0x21, 0x9E, 0xA3, 0x1A, 0xF6, 0x18,
-0x21, 0x96, 0x1F, 0xAF, 0x00, 0x23, 0xFB, 0x5E, 0x9C, 0x42, 0x01, 0xDC,
-0xA4, 0xB2, 0x1F, 0x94, 0x03, 0x9A, 0x35, 0x4C, 0x55, 0x19, 0x6D, 0x00,
-0x00, 0x27, 0x2B, 0x5B, 0x2F, 0x53, 0x83, 0xE7, 0x83, 0x18, 0x7E, 0x2C,
-0x36, 0xDD, 0x32, 0x4E, 0x7F, 0x27, 0xF7, 0x54, 0x14, 0x9F, 0xBC, 0x42,
-0x03, 0xDB, 0x17, 0x9E, 0xE3, 0x1B, 0xF6, 0x18, 0x17, 0x96, 0x10, 0xAF,
-0x00, 0x23, 0xFB, 0x5E, 0x9C, 0x42, 0x24, 0xDC, 0xA3, 0xB2, 0x18, 0x9E,
-0xB4, 0x42, 0x11, 0xDB, 0x1A, 0x9F, 0x09, 0x9C, 0xA7, 0x42, 0x00, 0xDA,
-0x1A, 0x94, 0x16, 0x9E, 0x09, 0x9C, 0xA6, 0x42, 0x00, 0xDD, 0x16, 0x94,
-0x15, 0x9E, 0x96, 0x42, 0x00, 0xDA, 0x15, 0x92, 0x19, 0x9F, 0xBA, 0x42,
-0x00, 0xDA, 0x19, 0x92, 0x03, 0x9A, 0x1D, 0x4C, 0x55, 0x19, 0x6D, 0x00,
-0x2A, 0x5B, 0x2B, 0x53, 0x54, 0xE7, 0x1D, 0x9E, 0x87, 0x18, 0xB4, 0x42,
-0x0E, 0xDA, 0x1B, 0x4C, 0x00, 0x26, 0x3E, 0x55, 0x9F, 0xE7, 0xA3, 0xB2,
-0x10, 0x93, 0xD8, 0xE7, 0x16, 0x4E, 0xF4, 0x54, 0x00, 0x2C, 0xC7, 0xDA,
-0x23, 0x9F, 0xBC, 0x42, 0xAF, 0xDC, 0xA9, 0xE7, 0x13, 0x4E, 0x20, 0x97,
-0xBC, 0x5D, 0x22, 0x9E, 0x67, 0xB2, 0xB7, 0x42, 0x8D, 0xD0, 0x20, 0x9F,
-0x0F, 0x4E, 0x01, 0x34, 0xBC, 0x55, 0x88, 0xE7, 0xAC, 0x09, 0x00, 0x20,
-0x4C, 0x00, 0x00, 0x20, 0x48, 0x0D, 0x00, 0x20, 0x70, 0x01, 0x00, 0x20,
-0xE4, 0x10, 0x00, 0x20, 0xAE, 0x09, 0x00, 0x20, 0x1C, 0x03, 0x00, 0x20,
-0x78, 0x09, 0x00, 0x20, 0x94, 0x11, 0x00, 0x20, 0x04, 0x40, 0x00, 0x40,
-0xF8, 0x03, 0x00, 0x20, 0x00, 0x40, 0x00, 0x40, 0x12, 0x79, 0x00, 0x00,
-0x64, 0x0E, 0x00, 0x20, 0xB3, 0x0A, 0x00, 0x20, 0x09, 0x9C, 0x01, 0x27,
-0x1C, 0x97, 0x00, 0x2C, 0x00, 0xD0, 0xD7, 0xE6, 0x6D, 0x46, 0x6F, 0x46,
-0x18, 0x26, 0x14, 0x20, 0x76, 0x5B, 0xC0, 0x5B, 0x41, 0x4D, 0x17, 0x99,
-0x10, 0xAC, 0x2F, 0x1C, 0x2E, 0x82, 0x68, 0x82, 0x29, 0x60, 0x25, 0x88,
-0x21, 0x9B, 0x3C, 0x1C, 0x3D, 0x81, 0x1A, 0x9E, 0x3C, 0x4F, 0x63, 0x60,
-0x1F, 0xAC, 0x25, 0x88, 0xBE, 0x60, 0x16, 0x98, 0x15, 0x99, 0x19, 0x9A,
-0x37, 0x4C, 0x0B, 0x9E, 0xF8, 0x60, 0x39, 0x60, 0x7A, 0x60, 0x65, 0x81,
-0x00, 0x2E, 0x24, 0xD0, 0x35, 0x4B, 0x1B, 0x78, 0x00, 0x2B, 0x03, 0xD0,
-0x34, 0x4B, 0x1B, 0x68, 0x00, 0x2B, 0x1C, 0xDD, 0x33, 0x4C, 0x23, 0x78,
-0x00, 0x2B, 0x56, 0xD1, 0x32, 0x4F, 0x3B, 0x7E, 0x00, 0x2B, 0x14, 0xD0,
-0x31, 0x4D, 0x09, 0x9F, 0x01, 0x26, 0x23, 0x78, 0x00, 0x2B, 0x08, 0xD0,
-0x2D, 0x48, 0x7A, 0x01, 0xC1, 0x7D, 0x52, 0x19, 0x03, 0x20, 0x01, 0x23,
-0x00, 0x96, 0xFF, 0xF7, 0xAD, 0xF8, 0x29, 0x49, 0x01, 0x37, 0x0B, 0x7E,
-0xFF, 0xB2, 0xBB, 0x42, 0xED, 0xD8, 0x26, 0x4C, 0x23, 0x7D, 0x00, 0x2B,
-0x13, 0xD0, 0x22, 0x7E, 0xE4, 0x7D, 0x01, 0x3A, 0x24, 0x49, 0xD2, 0xB2,
-0x02, 0x34, 0x00, 0x20, 0x53, 0x1C, 0x9B, 0x01, 0x1B, 0x19, 0x5B, 0x00,
-0x01, 0x3A, 0x5D, 0x5A, 0xD2, 0xB2, 0x5D, 0x5A, 0x58, 0x52, 0xF5, 0xE7,
-0x01, 0x26, 0x1C, 0x96, 0x74, 0xE6, 0x1D, 0x4D, 0x1D, 0x4E, 0xAB, 0x7E,
-0x32, 0x68, 0x13, 0x4F, 0x53, 0x43, 0x08, 0x21, 0x79, 0x5E, 0x1B, 0x48,
-0x9B, 0x11, 0x1B, 0x4A, 0xCD, 0x17, 0xDC, 0x0F, 0x00, 0x78, 0x99, 0x42,
-0x65, 0x41, 0x15, 0x70, 0x00, 0x28, 0x0A, 0xD1, 0x1C, 0x9C, 0x00, 0x2C,
-0x07, 0xD0, 0x01, 0x23, 0x13, 0x70, 0x15, 0x4A, 0x15, 0x49, 0x13, 0x70,
-0x15, 0x4A, 0x0B, 0x70, 0x13, 0x70, 0x25, 0xB0, 0xF0, 0xBD, 0x01, 0x25,
-0x1C, 0x95, 0x51, 0xE6, 0x01, 0x24, 0x1C, 0x94, 0x4E, 0xE6, 0x03, 0x20,
-0x10, 0x49, 0xFF, 0xF7, 0xBD, 0xF8, 0xA3, 0xE7, 0x70, 0x01, 0x00, 0x20,
-0xE4, 0x10, 0x00, 0x20, 0xDE, 0x01, 0x00, 0x20, 0x20, 0x01, 0x00, 0x20,
-0xEB, 0x01, 0x00, 0x20, 0xAE, 0x09, 0x00, 0x20, 0x64, 0x0E, 0x00, 0x20,
-0x00, 0x40, 0x00, 0x40, 0x48, 0x0D, 0x00, 0x20, 0x78, 0x09, 0x00, 0x20,
-0xE4, 0x01, 0x00, 0x20, 0x14, 0x09, 0x00, 0x20, 0x30, 0x11, 0x00, 0x20,
-0x48, 0x11, 0x00, 0x20, 0xC4, 0x01, 0x00, 0x20, 0xF0, 0x59, 0x00, 0x00,
-0xF0, 0xB5, 0x2F, 0x4B, 0x85, 0xB0, 0x1C, 0x78, 0x2E, 0x4D, 0x2F, 0x4E,
-0x10, 0xE0, 0x01, 0x3C, 0xE4, 0xB2, 0x2B, 0x57, 0x32, 0x57, 0x59, 0x1C,
-0x02, 0x32, 0x89, 0x01, 0x89, 0x18, 0x2B, 0x4A, 0x49, 0x00, 0x88, 0x5A,
-0x2A, 0x4A, 0x5B, 0x00, 0x9A, 0x5A, 0x21, 0x1C, 0xFF, 0xF7, 0x0A, 0xFB,
-0x00, 0x2C, 0xEC, 0xD1, 0x27, 0x4B, 0x1B, 0x78, 0x00, 0x2B, 0x08, 0xD0,
-0x20, 0x4B, 0x03, 0x20, 0x19, 0x78, 0x01, 0x23, 0x00, 0x93, 0x24, 0x4A,
-0x02, 0x23, 0xFF, 0xF7, 0x1D, 0xF8, 0x23, 0x4B, 0x1E, 0x49, 0x18, 0x78,
-0x9A, 0x78, 0x84, 0x1C, 0x03, 0x92, 0xDE, 0x78, 0x00, 0x23, 0x02, 0x94,
-0x0D, 0xE0, 0xA4, 0x01, 0xE4, 0x19, 0x64, 0x00, 0x65, 0x5A, 0x00, 0x25,
-0x65, 0x52, 0x01, 0x32, 0x02, 0xE0, 0x02, 0x9C, 0x00, 0x22, 0xE7, 0x18,
-0xB4, 0x1A, 0xF2, 0xD1, 0x01, 0x33, 0x03, 0x9D, 0x1A, 0x18, 0xAA, 0x42,
-0xF5, 0xDB, 0x15, 0x4B, 0x10, 0x49, 0x58, 0x78, 0xDE, 0x78, 0x42, 0x1C,
-0x01, 0x23, 0x5B, 0x42, 0x02, 0x92, 0x00, 0x22, 0x9F, 0x1C, 0x08, 0xE0,
-0x02, 0x9D, 0xAC, 0x18, 0xA4, 0x01, 0xE4, 0x19, 0x64, 0x00, 0x65, 0x5A,
-0x00, 0x25, 0x65, 0x52, 0x01, 0x32, 0x14, 0x18, 0xB4, 0x42, 0xF3, 0xDB,
-0x03, 0x9A, 0x01, 0x33, 0x93, 0x42, 0xEC, 0xDB, 0x05, 0xB0, 0xF0, 0xBD,
-0x7C, 0x09, 0x00, 0x20, 0x30, 0x75, 0x00, 0x00, 0x2A, 0x75, 0x00, 0x00,
-0x00, 0x40, 0x00, 0x40, 0x94, 0x11, 0x00, 0x20, 0xEB, 0x01, 0x00, 0x20,
-0x3C, 0x0D, 0x00, 0x20, 0x0A, 0x03, 0x00, 0x20, 0x30, 0xB5, 0x0C, 0x4B,
-0x0C, 0x4C, 0xDB, 0x78, 0x0C, 0x49, 0x10, 0xE0, 0x01, 0x3B, 0xDB, 0xB2,
-0x5A, 0x1C, 0x0B, 0x4D, 0xD2, 0x01, 0x52, 0x19, 0x45, 0x1C, 0x03, 0xD1,
-0x15, 0x88, 0x5A, 0x00, 0x55, 0x52, 0x04, 0xE0, 0x15, 0x88, 0x5A, 0x01,
-0x12, 0x18, 0x52, 0x00, 0x15, 0x53, 0x00, 0x2B, 0xEC, 0xD1, 0x30, 0xBD,
-0x0A, 0x03, 0x00, 0x20, 0xF8, 0x03, 0x00, 0x20, 0x94, 0x11, 0x00, 0x20,
-0x02, 0x40, 0x00, 0x40, 0xF0, 0xB5, 0x8D, 0xB0, 0x0A, 0x91, 0x0B, 0x92,
-0x63, 0x4B, 0x41, 0x1C, 0x0C, 0xD1, 0x63, 0x4A, 0x63, 0x49, 0x12, 0x7E,
-0x01, 0x3A, 0x03, 0x92, 0xDA, 0x78, 0x5E, 0x78, 0x54, 0x00, 0x00, 0x23,
-0x55, 0x1C, 0x64, 0x18, 0x94, 0x46, 0x0E, 0xE0, 0xDC, 0x7B, 0x5A, 0x79,
-0xA2, 0x18, 0x01, 0x3A, 0x10, 0xE0, 0x5C, 0x4A, 0xE9, 0x18, 0xC9, 0x01,
-0x89, 0x18, 0x0A, 0x88, 0x5F, 0x00, 0xE2, 0x53, 0x0A, 0x88, 0x00, 0x22,
-0x0A, 0x80, 0x01, 0x3B, 0x67, 0x46, 0xDA, 0x19, 0xB2, 0x42, 0xF0, 0xDA,
-0x03, 0x9A, 0x00, 0x24, 0x56, 0x01, 0x54, 0x4D, 0x36, 0x18, 0x00, 0x23,
-0x76, 0x00, 0x11, 0x1C, 0x08, 0x93, 0x07, 0x93, 0x06, 0x93, 0x05, 0x93,
-0x03, 0x95, 0x09, 0x96, 0xA4, 0x46, 0x55, 0xE0, 0x44, 0x1C, 0x04, 0xD1,
-0x4A, 0x4C, 0x56, 0x00, 0x34, 0x19, 0xE4, 0x5A, 0x04, 0xE0, 0x4B, 0x4C,
-0x09, 0x9F, 0x3E, 0x19, 0x5C, 0x01, 0x34, 0x5B, 0x4E, 0x1C, 0x46, 0x4F,
-0x04, 0x96, 0xF6, 0x01, 0xF6, 0x19, 0x37, 0x88, 0x24, 0xB2, 0x3E, 0xB2,
-0x45, 0x4F, 0xA6, 0x1B, 0x54, 0x00, 0xE7, 0x19, 0xF4, 0x17, 0xFE, 0x52,
-0x36, 0x19, 0x66, 0x40, 0x0F, 0x1C, 0x01, 0x24, 0xA7, 0x43, 0xB9, 0x42,
-0x09, 0xD1, 0x07, 0x9C, 0xA4, 0x19, 0x07, 0x94, 0xB5, 0x42, 0x00, 0xDD,
-0x35, 0x1C, 0x06, 0x9F, 0xB7, 0x42, 0x0B, 0xDB, 0x0D, 0xE0, 0x08, 0x9C,
-0x03, 0x9F, 0xA4, 0x19, 0x08, 0x94, 0xB7, 0x42, 0x00, 0xDD, 0x03, 0x96,
-0x05, 0x9C, 0xB4, 0x42, 0x02, 0xDB, 0x02, 0xE0, 0x06, 0x96, 0x00, 0xE0,
-0x05, 0x96, 0x04, 0x9E, 0xF4, 0x01, 0x2F, 0x4E, 0xA4, 0x19, 0x47, 0x1C,
-0x0E, 0xD1, 0x27, 0x88, 0x2B, 0x4E, 0x04, 0x97, 0x57, 0x00, 0xBE, 0x19,
-0x02, 0x96, 0x10, 0x27, 0x6E, 0x46, 0xBF, 0x5B, 0x02, 0x9E, 0xF7, 0x52,
-0x26, 0x88, 0x00, 0x26, 0x26, 0x80, 0x05, 0xE0, 0x27, 0x88, 0x27, 0x4E,
-0x09, 0x9C, 0xA6, 0x19, 0x5C, 0x01, 0x37, 0x53, 0x01, 0x39, 0x02, 0x3B,
-0x61, 0x45, 0xA7, 0xDA, 0x01, 0x30, 0x13, 0xD1, 0x23, 0x4C, 0x23, 0x78,
-0x00, 0x2B, 0x03, 0xD0, 0x01, 0x20, 0x22, 0x49, 0xFE, 0xF7, 0x70, 0xFF,
-0x23, 0x78, 0x00, 0x2B, 0x08, 0xD0, 0x17, 0x4B, 0x01, 0x20, 0xD9, 0x78,
-0x00, 0x23, 0x00, 0x93, 0x16, 0x4A, 0x02, 0x23, 0xFE, 0xF7, 0x0C, 0xFF,
-0x07, 0x9E, 0x08, 0x9F, 0x0A, 0x9C, 0xF3, 0x19, 0x23, 0x60, 0x05, 0x9E,
-0x03, 0x9F, 0x06, 0x9C, 0xF3, 0x1B, 0x65, 0x1B, 0x9D, 0x42, 0x00, 0xDA,
-0x1D, 0x1C, 0x0B, 0x9E, 0x12, 0x4C, 0x35, 0x60, 0x23, 0x78, 0x00, 0x2B,
-0x03, 0xD0, 0x0B, 0x20, 0x11, 0x49, 0xFE, 0xF7, 0x4D, 0xFF, 0x23, 0x78,
-0x00, 0x2B, 0x08, 0xD0, 0x06, 0x4B, 0x0B, 0x20, 0x19, 0x7E, 0x01, 0x23,
-0x00, 0x93, 0x09, 0x4A, 0x02, 0x23, 0xFE, 0xF7, 0xE9, 0xFE, 0x0D, 0xB0,
-0xF0, 0xBD, 0xC0, 0x46, 0x0A, 0x03, 0x00, 0x20, 0xAE, 0x09, 0x00, 0x20,
-0x94, 0x11, 0x00, 0x20, 0x02, 0x40, 0x00, 0x40, 0xFF, 0xFF, 0x00, 0x00,
-0xF8, 0x03, 0x00, 0x20, 0x54, 0x11, 0x00, 0x20, 0xEB, 0x01, 0x00, 0x20,
-0xC6, 0x59, 0x00, 0x00, 0xCD, 0x59, 0x00, 0x00, 0xF0, 0xB5, 0xA6, 0x4B,
-0x85, 0xB0, 0x1D, 0x78, 0x00, 0x2D, 0x29, 0xD0, 0xA4, 0x4B, 0xA5, 0x4C,
-0x18, 0x78, 0xA5, 0x4B, 0x46, 0xB2, 0x19, 0x68, 0x5B, 0x68, 0xB2, 0x00,
-0xCB, 0x18, 0x13, 0x51, 0x82, 0x1D, 0xD2, 0xB2, 0x00, 0x25, 0x06, 0x23,
-0x01, 0x3B, 0xDB, 0xB2, 0xF1, 0x1A, 0x00, 0xD5, 0x0C, 0x31, 0x89, 0x00,
-0x09, 0x59, 0x6D, 0x18, 0x11, 0x1C, 0x0B, 0x2A, 0x01, 0xD9, 0x0C, 0x39,
-0xC9, 0xB2, 0x89, 0x00, 0x61, 0x58, 0x01, 0x3A, 0x6D, 0x1A, 0xD2, 0xB2,
-0x00, 0x2B, 0xEB, 0xD1, 0x01, 0x30, 0x93, 0x4A, 0xC0, 0xB2, 0x10, 0x70,
-0x40, 0xB2, 0x0B, 0x28, 0x00, 0xDD, 0x13, 0x70, 0x92, 0x4B, 0x1B, 0x78,
-0x00, 0x2B, 0x00, 0xD0, 0x15, 0xE1, 0x91, 0x4B, 0x14, 0x21, 0x5B, 0x5E,
-0x9D, 0x42, 0x02, 0xDA, 0x8F, 0x4B, 0x01, 0x22, 0x1A, 0x70, 0x8B, 0x4B,
-0x10, 0x22, 0x9E, 0x5E, 0x12, 0x24, 0x1B, 0x5F, 0xF6, 0x1A, 0x85, 0x4B,
-0x18, 0x78, 0x00, 0x28, 0x16, 0xD1, 0x8A, 0x4B, 0x8A, 0x4F, 0x1B, 0x68,
-0x8A, 0x4C, 0xBB, 0x80, 0x23, 0x78, 0x3E, 0x80, 0x00, 0x2B, 0x02, 0xD0,
-0x88, 0x49, 0xFE, 0xF7, 0xD7, 0xFE, 0x23, 0x78, 0x00, 0x2B, 0x07, 0xD0,
-0x01, 0x23, 0x02, 0x21, 0x00, 0x93, 0x00, 0x20, 0x3A, 0x1C, 0x0B, 0x1C,
-0xFE, 0xF7, 0x74, 0xFE, 0x7C, 0x4B, 0x9A, 0x7D, 0x96, 0x42, 0x07, 0xDC,
-0x80, 0x4B, 0x1A, 0x78, 0x51, 0xB2, 0x02, 0x29, 0x08, 0xDC, 0x01, 0x32,
-0x1A, 0x70, 0x05, 0xE0, 0xDB, 0x7D, 0x9E, 0x42, 0x02, 0xDB, 0x7B, 0x4B,
-0x00, 0x22, 0x1A, 0x70, 0x71, 0x4B, 0x76, 0x4A, 0x59, 0x68, 0x1B, 0x68,
-0x15, 0x80, 0xCB, 0x18, 0x53, 0x80, 0x74, 0x4B, 0x96, 0x80, 0x1B, 0x78,
-0x00, 0x2B, 0x06, 0xD0, 0x01, 0x23, 0x00, 0x93, 0x19, 0x20, 0x03, 0x21,
-0x02, 0x23, 0xFE, 0xF7, 0x4F, 0xFE, 0x6B, 0x4B, 0x64, 0x4C, 0x1B, 0x78,
-0x00, 0x2B, 0x61, 0xD0, 0x6B, 0x4D, 0x2B, 0x78, 0x00, 0x2B, 0x03, 0xD0,
-0x19, 0x20, 0x6C, 0x49, 0xFE, 0xF7, 0x9A, 0xFE, 0x69, 0x4B, 0x1B, 0x78,
-0x00, 0x2B, 0x05, 0xD1, 0x22, 0x78, 0x00, 0x2A, 0x52, 0xD0, 0x61, 0x4A,
-0x13, 0x70, 0x4F, 0xE0, 0x03, 0x2B, 0x4D, 0xD1, 0x2B, 0x78, 0x00, 0x2B,
-0x03, 0xD0, 0x00, 0x20, 0x63, 0x49, 0xFE, 0xF7, 0x87, 0xFE, 0x55, 0x4B,
-0x62, 0x4A, 0x19, 0x78, 0x00, 0x29, 0x1A, 0xD1, 0x01, 0x20, 0x18, 0x70,
-0x13, 0x7E, 0xD6, 0x7D, 0x5F, 0x4D, 0x60, 0x4A, 0x0B, 0xE0, 0x01, 0x3B,
-0xDB, 0xB2, 0xF8, 0x18, 0x44, 0x00, 0xA1, 0x5A, 0xC9, 0x00, 0xA1, 0x52,
-0x00, 0x21, 0x41, 0x55, 0x00, 0x2B, 0xF4, 0xD1, 0x63, 0x46, 0x59, 0x1E,
-0xC9, 0xB2, 0x00, 0x2B, 0x23, 0xD0, 0x33, 0x1C, 0x4F, 0x01, 0x8C, 0x46,
-0xF4, 0xE7, 0x13, 0x7E, 0xD6, 0x7D, 0x54, 0x4A, 0x0E, 0xE0, 0x01, 0x3B,
-0x51, 0x4D, 0xDB, 0xB2, 0xFC, 0x18, 0x60, 0x00, 0x64, 0x57, 0xE4, 0x00,
-0x02, 0x94, 0x84, 0x5A, 0x02, 0x9D, 0x64, 0x1B, 0x84, 0x52, 0x00, 0x2B,
-0xF1, 0xD1, 0x0B, 0x1C, 0x59, 0x1E, 0xC9, 0xB2, 0x00, 0x2B, 0x02, 0xD0,
-0x33, 0x1C, 0x4F, 0x01, 0xF5, 0xE7, 0x3A, 0x4A, 0x11, 0x1C, 0x30, 0x31,
-0x08, 0xC2, 0x8A, 0x42, 0xFC, 0xD1, 0x3B, 0x4B, 0x00, 0x22, 0x1A, 0x70,
-0x44, 0x4B, 0x01, 0x22, 0x1A, 0x70, 0x60, 0xE0, 0x22, 0x78, 0x43, 0x4B,
-0x00, 0x2A, 0x06, 0xD1, 0x40, 0x4A, 0x01, 0x21, 0x11, 0x70, 0x1A, 0x68,
-0x52, 0x18, 0x1A, 0x60, 0x55, 0xE0, 0x00, 0x22, 0x1A, 0x60, 0x39, 0x4B,
-0x3D, 0x48, 0x1C, 0x7E, 0xDB, 0x7D, 0x39, 0x49, 0x02, 0x93, 0x2D, 0x4B,
-0x9B, 0x7C, 0x03, 0x93, 0x11, 0xE0, 0x01, 0x3B, 0xDB, 0xB2, 0xF2, 0x18,
-0x14, 0x56, 0x03, 0x9D, 0xAC, 0x42, 0x07, 0xD1, 0x31, 0x4D, 0x54, 0x00,
-0x57, 0x57, 0x65, 0x5A, 0xEF, 0x1B, 0x67, 0x52, 0x00, 0x24, 0x14, 0x54,
-0x00, 0x2B, 0xEE, 0xD1, 0x64, 0x46, 0x65, 0x1E, 0xED, 0xB2, 0x00, 0x2C,
-0x03, 0xD0, 0x02, 0x9B, 0x6E, 0x01, 0xAC, 0x46, 0xF4, 0xE7, 0x2D, 0x4B,
-0x1B, 0x68, 0x5D, 0x07, 0x2B, 0xD5, 0x20, 0x4B, 0x1B, 0x78, 0x00, 0x2B,
-0x22, 0xD0, 0x02, 0x20, 0x29, 0x49, 0xFE, 0xF7, 0x03, 0xFE, 0x1D, 0xE0,
-0xE9, 0x7D, 0x62, 0x01, 0x0B, 0x1C, 0x21, 0x48, 0x02, 0x92, 0x08, 0xE0,
-0x01, 0x3B, 0x02, 0x9A, 0xDB, 0xB2, 0xD2, 0x18, 0x52, 0x00, 0x12, 0x5A,
-0x5F, 0x00, 0xD2, 0x08, 0xBA, 0x53, 0x00, 0x2B, 0xF4, 0xD1, 0x13, 0x4A,
-0x12, 0x78, 0x00, 0x2A, 0x05, 0xD0, 0x02, 0x20, 0x00, 0x93, 0x0F, 0x4A,
-0x03, 0x1C, 0xFE, 0xF7, 0x8F, 0xFD, 0x01, 0x34, 0xE4, 0xB2, 0x01, 0xE0,
-0x11, 0x4D, 0x0B, 0x4E, 0x2B, 0x7E, 0xA3, 0x42, 0xDC, 0xD8, 0x05, 0xB0,
-0xF0, 0xBD, 0xC0, 0x46, 0x1C, 0x03, 0x00, 0x20, 0xF4, 0x10, 0x00, 0x20,
-0xBC, 0x11, 0x00, 0x20, 0x70, 0x01, 0x00, 0x20, 0x14, 0x09, 0x00, 0x20,
-0x48, 0x0D, 0x00, 0x20, 0x3C, 0x11, 0x00, 0x20, 0x34, 0x11, 0x00, 0x20,
-0x54, 0x11, 0x00, 0x20, 0xEB, 0x01, 0x00, 0x20, 0xD2, 0x59, 0x00, 0x00,
-0x20, 0x09, 0x00, 0x20, 0xD9, 0x59, 0x00, 0x00, 0xE2, 0x59, 0x00, 0x00,
-0xAE, 0x09, 0x00, 0x20, 0x64, 0x0E, 0x00, 0x20, 0xF8, 0x03, 0x00, 0x20,
-0x48, 0x11, 0x00, 0x20, 0xBC, 0x01, 0x00, 0x20, 0xB3, 0x0A, 0x00, 0x20,
-0x58, 0x00, 0x00, 0x20, 0xEB, 0x59, 0x00, 0x00, 0xF0, 0xB5, 0x25, 0x4B,
-0x87, 0xB0, 0x1B, 0x78, 0x00, 0x2B, 0x2B, 0xD1, 0x23, 0x4A, 0x24, 0x4B,
-0x90, 0x7C, 0x1B, 0x78, 0x04, 0x90, 0xD2, 0x7E, 0x22, 0x4D, 0x52, 0xB2,
-0x92, 0xB2, 0x05, 0x92, 0x21, 0x4A, 0x1D, 0xE0, 0x01, 0x3B, 0x21, 0x4C,
-0xDB, 0xB2, 0xE1, 0x5C, 0x04, 0x9F, 0xB9, 0x42, 0x16, 0xD1, 0x59, 0x00,
-0x88, 0x5A, 0x00, 0x28, 0x07, 0xD0, 0x6E, 0x5A, 0x6F, 0x46, 0x34, 0xB2,
-0xA4, 0x46, 0x14, 0x24, 0xE7, 0x5F, 0xBC, 0x45, 0x05, 0xDA, 0x59, 0x00,
-0x6E, 0x5A, 0xF6, 0x00, 0x80, 0x1B, 0x50, 0x52, 0x01, 0xE0, 0x80, 0x1B,
-0x88, 0x52, 0x14, 0x4F, 0x00, 0x21, 0xF9, 0x54, 0x00, 0x2B, 0xDF, 0xD1,
-0x0E, 0x4B, 0x12, 0x4C, 0x19, 0x78, 0x0F, 0x48, 0x0B, 0x1C, 0x05, 0xE0,
-0x01, 0x3B, 0xDB, 0xB2, 0x5A, 0x00, 0x15, 0x5A, 0xED, 0x08, 0x15, 0x53,
-0x00, 0x2B, 0xF7, 0xD1, 0x0C, 0x4A, 0x12, 0x78, 0x00, 0x2A, 0x05, 0xD0,
-0x02, 0x20, 0x00, 0x93, 0x08, 0x4A, 0x03, 0x1C, 0xFE, 0xF7, 0x0E, 0xFD,
-0x07, 0xB0, 0xF0, 0xBD, 0x30, 0x11, 0x00, 0x20, 0x48, 0x0D, 0x00, 0x20,
-0x7C, 0x09, 0x00, 0x20, 0x3C, 0x0D, 0x00, 0x20, 0x14, 0x02, 0x00, 0x20,
-0xA4, 0x0A, 0x00, 0x20, 0x54, 0x11, 0x00, 0x20, 0xEB, 0x01, 0x00, 0x20,
-0x10, 0xB5, 0x09, 0x49, 0x50, 0x22, 0x09, 0x48, 0x00, 0xF0, 0xE2, 0xF9,
-0x08, 0x4C, 0x09, 0x49, 0x20, 0x1C, 0x42, 0x22, 0x00, 0xF0, 0xDC, 0xF9,
-0x07, 0x4B, 0xA2, 0x7B, 0x1A, 0x60, 0xE3, 0x7D, 0xE3, 0x76, 0x23, 0x7E,
-0x23, 0x77, 0x10, 0xBD, 0x4A, 0x74, 0x00, 0x00, 0x48, 0x0D, 0x00, 0x20,
-0xAE, 0x09, 0x00, 0x20, 0x08, 0x74, 0x00, 0x00, 0x50, 0x11, 0x00, 0x20,
-0x08, 0xB5, 0x04, 0x49, 0x04, 0x4B, 0x41, 0x43, 0x04, 0x48, 0xC9, 0x18,
-0x00, 0xF0, 0x60, 0xF9, 0xC0, 0xB2, 0x08, 0xBD, 0x44, 0xFE, 0xFF, 0xFF,
-0xFE, 0x24, 0x02, 0x00, 0x40, 0x42, 0x0F, 0x00, 0x10, 0xB5, 0x15, 0x4C,
-0x00, 0x23, 0x23, 0x71, 0x03, 0x23, 0x63, 0x71, 0x02, 0x23, 0x23, 0x72,
-0x12, 0x4B, 0x98, 0x78, 0x02, 0x38, 0x03, 0x28, 0x1D, 0xD8, 0x00, 0xF0,
-0xE7, 0xF8, 0x0B, 0x04, 0x02, 0x14, 0xC7, 0x20, 0x00, 0xE0, 0xD7, 0x20,
-0xE0, 0x70, 0xFF, 0xF7, 0xD9, 0xFF, 0x02, 0x23, 0x20, 0x70, 0x0E, 0xE0,
-0xF4, 0x20, 0xE0, 0x70, 0xFF, 0xF7, 0xD2, 0xFF, 0x02, 0x23, 0x20, 0x70,
-0xA3, 0x71, 0x01, 0x23, 0x06, 0xE0, 0xF4, 0x20, 0xE0, 0x70, 0xFF, 0xF7,
-0xC9, 0xFF, 0x01, 0x23, 0x20, 0x70, 0xA3, 0x71, 0xE3, 0x71, 0x10, 0xBD,
-0xAA, 0x0A, 0x00, 0x20, 0x48, 0x0D, 0x00, 0x20, 0xF0, 0xB5, 0x59, 0x4B,
-0x87, 0xB0, 0x1A, 0x68, 0x58, 0x4B, 0x08, 0x2A, 0x01, 0xD1, 0x01, 0x22,
-0x00, 0xE0, 0x00, 0x22, 0x1A, 0x70, 0x56, 0x4B, 0x56, 0x4C, 0x01, 0x33,
-0xDB, 0x7F, 0x00, 0x2B, 0x00, 0xD1, 0xE3, 0x71, 0x23, 0x78, 0x01, 0x25,
-0xA2, 0x79, 0x28, 0x1C, 0xD9, 0x00, 0x90, 0x40, 0x82, 0xB2, 0xCB, 0x1A,
-0x53, 0x43, 0x50, 0x4E, 0xDB, 0x10, 0xDB, 0xB2, 0x33, 0x80, 0x22, 0x78,
-0xFA, 0x23, 0xA0, 0x79, 0x9B, 0x00, 0x53, 0x43, 0x4C, 0x4F, 0x29, 0x1C,
-0x81, 0x40, 0x88, 0xB2, 0xB9, 0x88, 0x58, 0x43, 0x09, 0x01, 0x00, 0xF0,
-0xFB, 0xF8, 0xC1, 0xB2, 0x71, 0x80, 0x23, 0x78, 0x2D, 0x22, 0xA0, 0x79,
-0x53, 0x43, 0x2A, 0x1C, 0x82, 0x40, 0x90, 0xB2, 0x58, 0x43, 0x6B, 0x46,
-0x19, 0x81, 0x09, 0x01, 0x00, 0xF0, 0xEC, 0xF8, 0xC0, 0xB2, 0xB0, 0x80,
-0x23, 0x7A, 0xB9, 0x79, 0xD8, 0x00, 0x18, 0x1A, 0xA9, 0x40, 0xC0, 0x00,
-0x49, 0x19, 0xE0, 0x30, 0x48, 0x43, 0xA2, 0x79, 0x6C, 0x46, 0x08, 0x21,
-0x61, 0x5E, 0x90, 0x40, 0x49, 0x01, 0x00, 0xF0, 0x8B, 0xF8, 0x34, 0x4A,
-0xF0, 0x80, 0x11, 0x7D, 0xD0, 0x7D, 0x36, 0x4B, 0x08, 0x18, 0xC0, 0xB2,
-0x18, 0x70, 0x17, 0x7E, 0x5F, 0x70, 0x56, 0x7E, 0x01, 0x96, 0x96, 0x7F,
-0x01, 0x9C, 0x66, 0x43, 0xF4, 0xB2, 0x20, 0x18, 0xC0, 0xB2, 0x98, 0x70,
-0x02, 0x90, 0x96, 0x7E, 0x03, 0x96, 0x03, 0x98, 0xD6, 0x7F, 0x46, 0x43,
-0xF0, 0xB2, 0xC7, 0x19, 0xFF, 0xB2, 0xDF, 0x70, 0xD6, 0x7E, 0xB4, 0x46,
-0x61, 0x44, 0x61, 0x18, 0xC9, 0xB2, 0x19, 0x71, 0x16, 0x7F, 0x80, 0x19,
-0x02, 0x9E, 0xC0, 0xB2, 0x74, 0x1A, 0x3F, 0x1A, 0xE6, 0xB2, 0xFF, 0xB2,
-0x58, 0x71, 0x9E, 0x71, 0xDF, 0x71, 0xBC, 0x46, 0x57, 0x7D, 0xEC, 0x1B,
-0x04, 0x97, 0x27, 0x1C, 0x77, 0x43, 0xFF, 0xB2, 0x05, 0x97, 0x9F, 0x73,
-0x97, 0x7D, 0x64, 0x46, 0xED, 0x1B, 0x65, 0x43, 0x47, 0x43, 0x04, 0x9C,
-0x5F, 0x74, 0x4C, 0x43, 0x18, 0x72, 0x6F, 0x46, 0x14, 0x20, 0xC7, 0x5D,
-0xED, 0xB2, 0xE4, 0xB2, 0xDD, 0x73, 0x1C, 0x74, 0x5D, 0x72, 0x99, 0x72,
-0xDF, 0x72, 0x1E, 0x73, 0x5C, 0x73, 0x51, 0x7F, 0x12, 0x4B, 0x00, 0x29,
-0x03, 0xD0, 0x69, 0x46, 0x09, 0x79, 0x19, 0x70, 0x03, 0xE0, 0x01, 0x9C,
-0x03, 0x9E, 0x74, 0x43, 0x1C, 0x70, 0x93, 0x1C, 0x03, 0x32, 0x02, 0x9F,
-0xD2, 0x7F, 0xDB, 0x7F, 0xBA, 0x18, 0x5B, 0xB2, 0x01, 0x32, 0x9A, 0x40,
-0x09, 0x4B, 0x07, 0xB0, 0x1A, 0x60, 0xF0, 0xBD, 0x50, 0x11, 0x00, 0x20,
-0xFA, 0x02, 0x00, 0x20, 0xAE, 0x09, 0x00, 0x20, 0xAA, 0x0A, 0x00, 0x20,
-0x04, 0x02, 0x00, 0x20, 0x48, 0x0D, 0x00, 0x20, 0x0A, 0x03, 0x00, 0x20,
-0x7C, 0x09, 0x00, 0x20, 0x18, 0x09, 0x00, 0x20, 0x02, 0xB4, 0x71, 0x46,
-0x49, 0x08, 0x49, 0x00, 0x09, 0x5C, 0x49, 0x00, 0x8E, 0x44, 0x02, 0xBC,
-0x70, 0x47, 0xC0, 0x46, 0x03, 0xB4, 0x71, 0x46, 0x49, 0x08, 0x40, 0x00,
-0x49, 0x00, 0x09, 0x5A, 0x49, 0x00, 0x8E, 0x44, 0x03, 0xBC, 0x70, 0x47,
-0x00, 0x29, 0x34, 0xD0, 0x01, 0x23, 0x00, 0x22, 0x10, 0xB4, 0x88, 0x42,
-0x2C, 0xD3, 0x01, 0x24, 0x24, 0x07, 0xA1, 0x42, 0x04, 0xD2, 0x81, 0x42,
-0x02, 0xD2, 0x09, 0x01, 0x1B, 0x01, 0xF8, 0xE7, 0xE4, 0x00, 0xA1, 0x42,
-0x04, 0xD2, 0x81, 0x42, 0x02, 0xD2, 0x49, 0x00, 0x5B, 0x00, 0xF8, 0xE7,
-0x88, 0x42, 0x01, 0xD3, 0x40, 0x1A, 0x1A, 0x43, 0x4C, 0x08, 0xA0, 0x42,
-0x02, 0xD3, 0x00, 0x1B, 0x5C, 0x08, 0x22, 0x43, 0x8C, 0x08, 0xA0, 0x42,
-0x02, 0xD3, 0x00, 0x1B, 0x9C, 0x08, 0x22, 0x43, 0xCC, 0x08, 0xA0, 0x42,
-0x02, 0xD3, 0x00, 0x1B, 0xDC, 0x08, 0x22, 0x43, 0x00, 0x28, 0x03, 0xD0,
-0x1B, 0x09, 0x01, 0xD0, 0x09, 0x09, 0xE3, 0xE7, 0x10, 0x1C, 0x10, 0xBC,
-0x70, 0x47, 0x00, 0x28, 0x01, 0xD0, 0x00, 0x20, 0xC0, 0x43, 0x07, 0xB4,
-0x02, 0x48, 0x02, 0xA1, 0x40, 0x18, 0x02, 0x90, 0x03, 0xBD, 0xC0, 0x46,
-0xD9, 0x00, 0x00, 0x00, 0x00, 0x29, 0xF0, 0xD0, 0x03, 0xB5, 0xFF, 0xF7,
-0xB9, 0xFF, 0x0E, 0xBC, 0x42, 0x43, 0x89, 0x1A, 0x18, 0x47, 0xC0, 0x46,
-0x00, 0x29, 0x41, 0xD0, 0x10, 0xB4, 0x04, 0x1C, 0x4C, 0x40, 0xA4, 0x46,
-0x01, 0x23, 0x00, 0x22, 0x00, 0x29, 0x00, 0xD5, 0x49, 0x42, 0x00, 0x28,
-0x00, 0xD5, 0x40, 0x42, 0x88, 0x42, 0x2C, 0xD3, 0x01, 0x24, 0x24, 0x07,
-0xA1, 0x42, 0x04, 0xD2, 0x81, 0x42, 0x02, 0xD2, 0x09, 0x01, 0x1B, 0x01,
-0xF8, 0xE7, 0xE4, 0x00, 0xA1, 0x42, 0x04, 0xD2, 0x81, 0x42, 0x02, 0xD2,
-0x49, 0x00, 0x5B, 0x00, 0xF8, 0xE7, 0x88, 0x42, 0x01, 0xD3, 0x40, 0x1A,
-0x1A, 0x43, 0x4C, 0x08, 0xA0, 0x42, 0x02, 0xD3, 0x00, 0x1B, 0x5C, 0x08,
-0x22, 0x43, 0x8C, 0x08, 0xA0, 0x42, 0x02, 0xD3, 0x00, 0x1B, 0x9C, 0x08,
-0x22, 0x43, 0xCC, 0x08, 0xA0, 0x42, 0x02, 0xD3, 0x00, 0x1B, 0xDC, 0x08,
-0x22, 0x43, 0x00, 0x28, 0x03, 0xD0, 0x1B, 0x09, 0x01, 0xD0, 0x09, 0x09,
-0xE3, 0xE7, 0x10, 0x1C, 0x64, 0x46, 0x00, 0x2C, 0x00, 0xD5, 0x40, 0x42,
-0x10, 0xBC, 0x70, 0x47, 0x00, 0x28, 0x06, 0xD0, 0x03, 0xDB, 0x00, 0x20,
-0xC0, 0x43, 0x40, 0x08, 0x01, 0xE0, 0x80, 0x20, 0x00, 0x06, 0x07, 0xB4,
-0x02, 0x48, 0x02, 0xA1, 0x40, 0x18, 0x02, 0x90, 0x03, 0xBD, 0xC0, 0x46,
-0x19, 0x00, 0x00, 0x00, 0x00, 0x29, 0xEB, 0xD0, 0x03, 0xB5, 0xFF, 0xF7,
-0xA7, 0xFF, 0x0E, 0xBC, 0x42, 0x43, 0x89, 0x1A, 0x18, 0x47, 0xC0, 0x46,
-0x70, 0x47, 0xC0, 0x46, 0xF0, 0xB5, 0x05, 0x1C, 0x0F, 0x2A, 0x2F, 0xD9,
-0x0B, 0x1C, 0x03, 0x43, 0x05, 0x1C, 0x9C, 0x07, 0x2C, 0xD1, 0x0C, 0x1C,
-0x03, 0x1C, 0x15, 0x1C, 0x26, 0x68, 0x10, 0x3D, 0x1E, 0x60, 0x66, 0x68,
-0x5E, 0x60, 0xA6, 0x68, 0x9E, 0x60, 0xE6, 0x68, 0x10, 0x34, 0xDE, 0x60,
-0x10, 0x33, 0x0F, 0x2D, 0xF2, 0xD8, 0x13, 0x1C, 0x10, 0x3B, 0x1B, 0x09,
-0x01, 0x33, 0x1B, 0x01, 0xC5, 0x18, 0xC9, 0x18, 0x0F, 0x23, 0x1A, 0x40,
-0x03, 0x2A, 0x0F, 0xD9, 0x0E, 0x1C, 0x2C, 0x1C, 0x13, 0x1C, 0x80, 0xCE,
-0x04, 0x3B, 0x80, 0xC4, 0x03, 0x2B, 0xFA, 0xD8, 0x13, 0x1F, 0x9B, 0x08,
-0x01, 0x33, 0x9B, 0x00, 0x03, 0x24, 0x22, 0x40, 0xC9, 0x18, 0xED, 0x18,
-0x00, 0x2A, 0x05, 0xD0, 0x00, 0x23, 0xCC, 0x5C, 0xEC, 0x54, 0x01, 0x33,
-0x93, 0x42, 0xFA, 0xD1, 0xF0, 0xBD, 0xC0, 0x46, 0x50, 0x61, 0x6C, 0x6D,
-0x20, 0x49, 0x6E, 0x69, 0x74, 0x00, 0x27, 0x45, 0x6E, 0x74, 0x65, 0x72,
-0x27, 0x20, 0x4E, 0x00, 0x4E, 0x2D, 0x6C, 0x65, 0x73, 0x73, 0x21, 0x00,
-0x27, 0x45, 0x78, 0x69, 0x74, 0x27, 0x20, 0x4E, 0x00, 0x4E, 0x20, 0x53,
-0x2F, 0x50, 0x00, 0x53, 0x6C, 0x65, 0x65, 0x70, 0x00, 0x53, 0x2D, 0x72,
-0x65, 0x73, 0x65, 0x74, 0x00, 0x46, 0x41, 0x53, 0x54, 0x00, 0x49, 0x64,
-0x6C, 0x65, 0x00, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x00, 0x53, 0x70,
-0x65, 0x63, 0x74, 0x00, 0x53, 0x74, 0x61, 0x63, 0x6B, 0x21, 0x00, 0x52,
-0x45, 0x47, 0x56, 0x41, 0x4C, 0x00, 0x44, 0x65, 0x6C, 0x61, 0x79, 0x00,
-0x4F, 0x53, 0x43, 0x00, 0x4E, 0x4F, 0x49, 0x53, 0x45, 0x00, 0x54, 0x6F,
-0x75, 0x63, 0x68, 0x20, 0x4F, 0x6E, 0x00, 0x54, 0x6F, 0x75, 0x63, 0x68,
-0x20, 0x4F, 0x46, 0x46, 0x00, 0x4C, 0x54, 0x5F, 0x50, 0x52, 0x4F, 0x46,
-0x49, 0x4C, 0x49, 0x4E, 0x47, 0x00, 0x46, 0x69, 0x78, 0x65, 0x64, 0x00,
-0x47, 0x2D, 0x41, 0x66, 0x74, 0x65, 0x72, 0x00, 0x3D, 0x48, 0x6F, 0x76,
-0x6F, 0x72, 0x00, 0x12, 0x0E, 0x07, 0x0D, 0x0A, 0x12, 0x04, 0x06, 0x0C,
-0x09, 0x12, 0x0F, 0x05, 0x11, 0x08, 0x12, 0x00, 0x01, 0x10, 0x02, 0x45,
-0x72, 0x72, 0x00, 0x4B, 0x65, 0x79, 0x20, 0x52, 0x00, 0x52, 0x45, 0x46,
-0x20, 0x49, 0x4E, 0x49, 0x54, 0x00, 0x43, 0x6D, 0x44, 0x65, 0x6C, 0x74,
-0x61, 0x20, 0x52, 0x65, 0x66, 0x2F, 0x52, 0x65, 0x61, 0x6C, 0x00, 0x52,
-0x61, 0x77, 0x00, 0x4D, 0x41, 0x58, 0x20, 0x49, 0x00, 0x43, 0x4D, 0x5F,
-0x44, 0x45, 0x4C, 0x54, 0x41, 0x5F, 0x4D, 0x41, 0x58, 0x5F, 0x4D, 0x49,
-0x4E, 0x00, 0x54, 0x78, 0x6C, 0x65, 0x73, 0x73, 0x00, 0x44, 0x69, 0x66,
-0x66, 0x00, 0x44, 0x49, 0x46, 0x46, 0x2F, 0x4E, 0x00, 0x42, 0x69, 0x67,
-0x20, 0x47, 0x72, 0x61, 0x64, 0x00, 0x4E, 0x65, 0x67, 0x2D, 0x45, 0x64,
-0x67, 0x65, 0x00, 0x52, 0x65, 0x66, 0x00, 0x00, 0x2D, 0x49, 0x00, 0x00,
-0xFF, 0x00, 0x00, 0x01, 0x00, 0xFF, 0x01, 0x00, 0xFF, 0x00, 0x00, 0x00,
-0x01, 0x00, 0x00, 0x00, 0xA0, 0x0D, 0x00, 0x20, 0x28, 0x02, 0x00, 0x20,
-0x0C, 0x00, 0x00, 0x00, 0x54, 0x11, 0x00, 0x20, 0x01, 0x02, 0xFF, 0x00,
-0x01, 0x04, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x45, 0x4D, 0x31, 0x48, 0x30,
-0x50, 0x52, 0x34, 0x35, 0x08, 0xB5, 0x00, 0x28, 0x02, 0xD0, 0x01, 0x28,
-0x24, 0xD1, 0x07, 0xE0, 0x12, 0x4B, 0x13, 0x4A, 0x1A, 0x60, 0x13, 0x4B,
-0x58, 0x60, 0x98, 0x60, 0xD8, 0x60, 0x1B, 0xE0, 0x11, 0x4B, 0x1B, 0x68,
-0x10, 0x2B, 0x15, 0xD1, 0x10, 0x4A, 0x11, 0x4B, 0x1A, 0x60, 0x11, 0x4A,
-0x11, 0x4B, 0x1A, 0x60, 0x11, 0x4A, 0x12, 0x4B, 0x1A, 0x60, 0x12, 0x4A,
-0x12, 0x4B, 0x1A, 0x60, 0x12, 0x4A, 0x13, 0x4B, 0x1A, 0x60, 0x13, 0x4A,
-0x13, 0x4B, 0x1A, 0x60, 0x13, 0x4A, 0x14, 0x4B, 0x1A, 0x60, 0x01, 0xE0,
-0xFE, 0xF7, 0xC8, 0xF8, 0x08, 0xBD, 0xC0, 0x46, 0xF8, 0x01, 0x00, 0x20,
-0xC1, 0x68, 0x00, 0x00, 0xF8, 0x08, 0x00, 0x20, 0x50, 0x11, 0x00, 0x20,
-0xA9, 0x5C, 0x00, 0x00, 0x68, 0x00, 0x00, 0x20, 0x81, 0x68, 0x00, 0x00,
-0x6C, 0x00, 0x00, 0x20, 0x2D, 0x66, 0x00, 0x00, 0x00, 0x02, 0x00, 0x20,
-0x49, 0x71, 0x00, 0x00, 0x18, 0x00, 0x00, 0x20, 0x05, 0x62, 0x00, 0x00,
-0x1C, 0x00, 0x00, 0x20, 0xE9, 0x61, 0x00, 0x00, 0x20, 0x00, 0x00, 0x20,
-0xAB, 0x5C, 0x00, 0x00, 0x24, 0x00, 0x00, 0x20, 0x70, 0x47, 0xA0, 0x23,
-0xDB, 0x05, 0x01, 0x22, 0x1A, 0x72, 0x09, 0x49, 0x10, 0x22, 0x1A, 0x72,
-0x00, 0x22, 0x0A, 0x70, 0x1A, 0x72, 0x07, 0x4B, 0x80, 0x22, 0x19, 0x68,
-0x52, 0x00, 0x0A, 0x43, 0x1A, 0x60, 0x1A, 0x68, 0x80, 0x23, 0xDB, 0x05,
-0x99, 0x68, 0x9A, 0x60, 0x70, 0x47, 0xC0, 0x46, 0x0C, 0x00, 0x00, 0x20,
-0x14, 0x00, 0x00, 0x20, 0x00, 0xB5, 0x5A, 0x28, 0x07, 0xD0, 0x05, 0x4B,
-0x59, 0x28, 0x01, 0xDD, 0xB4, 0x22, 0x10, 0x1A, 0x40, 0x00, 0x18, 0x5A,
-0x00, 0xE0, 0x02, 0x48, 0x00, 0xBD, 0xC0, 0x46, 0x90, 0x72, 0x00, 0x00,
-0xFF, 0xFF, 0x00, 0x00, 0x00, 0xB5, 0x00, 0x28, 0x0E, 0xD0, 0xB4, 0x28,
-0x0E, 0xD0, 0x08, 0x4B, 0x5A, 0x28, 0x04, 0xDC, 0x5A, 0x22, 0x10, 0x1A,
-0x40, 0x00, 0x18, 0x5A, 0x07, 0xE0, 0x5A, 0x38, 0x40, 0x00, 0x18, 0x5A,
-0x40, 0x42, 0x02, 0xE0, 0x02, 0x48, 0x00, 0xE0, 0x02, 0x48, 0x00, 0xBD,
-0x90, 0x72, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x01, 0x00, 0xFF, 0xFF,
-0xF0, 0xB5, 0x9B, 0xB0, 0x0E, 0x93, 0x11, 0x90, 0x0B, 0x91, 0x08, 0x78,
-0xC9, 0x4B, 0x03, 0x90, 0x49, 0x78, 0x16, 0x1C, 0x49, 0xB2, 0x12, 0x91,
-0x0A, 0x20, 0x1A, 0x5E, 0x00, 0x25, 0x13, 0x92, 0xC5, 0x4A, 0x2C, 0x1C,
-0x28, 0x20, 0x11, 0x5E, 0x2F, 0x1C, 0x14, 0x91, 0x59, 0x68, 0x15, 0x91,
-0xC2, 0x49, 0x09, 0x68, 0x0D, 0x91, 0x08, 0x21, 0x58, 0x5E, 0x1B, 0x68,
-0x17, 0x90, 0x26, 0x21, 0x50, 0x5E, 0x19, 0x93, 0x18, 0x90, 0x04, 0x95,
-0x06, 0x95, 0x05, 0x95, 0x09, 0x95, 0x0A, 0x95, 0x08, 0x95, 0x95, 0xE0,
-0x03, 0x9A, 0x14, 0x98, 0x15, 0x99, 0x50, 0x43, 0xFF, 0xF7, 0xFA, 0xFC,
-0x13, 0x9B, 0x00, 0xB2, 0x18, 0x18, 0x33, 0x68, 0x0B, 0x99, 0xC3, 0x1A,
-0x0B, 0x98, 0x0C, 0x93, 0x80, 0x78, 0x03, 0x9A, 0x02, 0x90, 0xC9, 0x78,
-0x01, 0x32, 0x49, 0xB2, 0x93, 0x01, 0x16, 0x91, 0x0F, 0x92, 0x10, 0x93,
-0x75, 0xE0, 0x02, 0x9A, 0x10, 0x99, 0x02, 0x32, 0x88, 0x18, 0xAC, 0x49,
-0x43, 0x5C, 0x0E, 0x2B, 0x27, 0xD9, 0x04, 0x23, 0x94, 0x46, 0xAA, 0x48,
-0x01, 0x3B, 0xDB, 0xB2, 0xC2, 0x56, 0x03, 0x99, 0x8A, 0x18, 0xA8, 0x49,
-0x01, 0x32, 0xC8, 0x56, 0x02, 0x99, 0x92, 0x01, 0x08, 0x18, 0x02, 0x30,
-0xA2, 0x49, 0x10, 0x18, 0x0A, 0x5C, 0x01, 0x3A, 0xD2, 0xB2, 0x0D, 0x2A,
-0x0E, 0xD8, 0xA2, 0x48, 0x0E, 0x99, 0x82, 0x56, 0x8A, 0x42, 0x09, 0xD1,
-0x10, 0x9B, 0x62, 0x46, 0x9A, 0x18, 0x9F, 0x48, 0x52, 0x00, 0x13, 0x5A,
-0x0D, 0x99, 0x5B, 0x1A, 0x07, 0x93, 0x12, 0xE0, 0x00, 0x2B, 0xDA, 0xD1,
-0x41, 0xE0, 0x00, 0x2B, 0x3F, 0xD0, 0x98, 0x4A, 0x0E, 0x99, 0xD3, 0x18,
-0x01, 0x3B, 0x1B, 0x78, 0x5B, 0xB2, 0x8B, 0x42, 0x37, 0xD1, 0x95, 0x4A,
-0x40, 0x00, 0x83, 0x5A, 0x0D, 0x98, 0x1B, 0x1A, 0x07, 0x93, 0x07, 0x99,
-0x00, 0x29, 0x2E, 0xD0, 0x02, 0x9A, 0x18, 0x98, 0x19, 0x99, 0x50, 0x43,
-0xFF, 0xF7, 0x9E, 0xFC, 0x07, 0x9A, 0x17, 0x9B, 0x08, 0x99, 0x00, 0xB2,
-0x89, 0x18, 0x18, 0x18, 0x73, 0x68, 0x08, 0x91, 0x0C, 0x99, 0xC0, 0x1A,
-0x13, 0x1C, 0x4B, 0x43, 0x42, 0x43, 0x00, 0x28, 0x0B, 0xDC, 0x00, 0x29,
-0x04, 0xDD, 0xFF, 0x18, 0x0A, 0x9B, 0x9B, 0x1A, 0x0A, 0x93, 0x12, 0xE0,
-0x09, 0x98, 0xE4, 0x1A, 0x80, 0x1A, 0x09, 0x90, 0x0D, 0xE0, 0x0C, 0x99,
-0x00, 0x29, 0x06, 0xDC, 0x05, 0x98, 0x06, 0x99, 0xC0, 0x1A, 0x89, 0x18,
-0x05, 0x90, 0x06, 0x91, 0x03, 0xE0, 0x04, 0x98, 0xAD, 0x18, 0xC0, 0x18,
-0x04, 0x90, 0x02, 0x9B, 0x01, 0x33, 0xDB, 0xB2, 0x02, 0x93, 0x02, 0x99,
-0x16, 0x9A, 0x91, 0x42, 0x85, 0xDD, 0x0F, 0xAB, 0x1B, 0x78, 0x03, 0x93,
-0x03, 0x98, 0x12, 0x99, 0x88, 0x42, 0x00, 0xDC, 0x64, 0xE7, 0x05, 0x9A,
-0x04, 0x98, 0x94, 0x46, 0x63, 0x46, 0x3A, 0x1B, 0x19, 0x1A, 0x02, 0x97,
-0xD1, 0x42, 0x02, 0xD4, 0x00, 0x21, 0x07, 0x91, 0x0D, 0xE0, 0x06, 0x9A,
-0x06, 0x95, 0x15, 0x1C, 0x04, 0x9A, 0x09, 0x99, 0x04, 0x93, 0x0A, 0x9B,
-0x05, 0x92, 0x27, 0x1C, 0x01, 0x22, 0x02, 0x9C, 0x0A, 0x91, 0x09, 0x93,
-0x07, 0x92, 0x05, 0x9B, 0x04, 0x99, 0xF8, 0x18, 0x00, 0x19, 0x40, 0x18,
-0x08, 0x99, 0xFF, 0xF7, 0x43, 0xFC, 0x02, 0x90, 0x00, 0x28, 0x64, 0xD0,
-0x0A, 0x9A, 0x06, 0x9B, 0x09, 0x99, 0xD0, 0x18, 0x40, 0x18, 0x40, 0x19,
-0x08, 0x99, 0xFF, 0xF7, 0x37, 0xFC, 0x03, 0x90, 0x03, 0x9A, 0x5A, 0x20,
-0x00, 0x2A, 0x56, 0xD0, 0x02, 0x9B, 0x2D, 0x20, 0x9A, 0x42, 0x52, 0xD0,
-0x93, 0x42, 0x24, 0xDA, 0x11, 0x1C, 0x98, 0x01, 0xFF, 0xF7, 0x28, 0xFC,
-0x05, 0x1C, 0x05, 0x98, 0x04, 0x99, 0x3F, 0x1B, 0x3F, 0x18, 0x78, 0x1A,
-0xC3, 0x43, 0xDB, 0x17, 0x18, 0x40, 0x08, 0x99, 0xFF, 0xF7, 0x1C, 0xFC,
-0x03, 0x99, 0x80, 0x01, 0xFF, 0xF7, 0x18, 0xFC, 0x4B, 0x4B, 0x1A, 0x1C,
-0x3F, 0x28, 0x00, 0xDD, 0x3F, 0x20, 0x1B, 0x5C, 0x3F, 0x2D, 0x00, 0xDD,
-0x3F, 0x25, 0x51, 0x5D, 0x2D, 0x20, 0x41, 0x1A, 0xC9, 0x18, 0x58, 0x43,
-0xFF, 0xF7, 0x08, 0xFC, 0x2B, 0xE0, 0x03, 0x9A, 0x02, 0x99, 0x90, 0x01,
-0xFF, 0xF7, 0x02, 0xFC, 0x3F, 0x28, 0x00, 0xDD, 0x3F, 0x20, 0x3F, 0x4B,
-0x09, 0x99, 0x1C, 0x5C, 0x0A, 0x9B, 0x06, 0x9A, 0x58, 0x1A, 0x80, 0x18,
-0x40, 0x1B, 0xC3, 0x43, 0xDB, 0x17, 0x08, 0x99, 0x18, 0x40, 0xFF, 0xF7,
-0xF1, 0xFB, 0x02, 0x99, 0x80, 0x01, 0xFF, 0xF7, 0xED, 0xFB, 0x3F, 0x28,
-0x00, 0xDD, 0x3F, 0x20, 0x34, 0x4B, 0x5A, 0x22, 0x1B, 0x5C, 0x2D, 0x20,
-0xD1, 0x1A, 0x00, 0x1B, 0x12, 0x1B, 0x48, 0x43, 0x5A, 0x43, 0x87, 0x23,
-0x1C, 0x1B, 0x80, 0x18, 0x61, 0x1A, 0xFF, 0xF7, 0xDB, 0xFB, 0x07, 0x9B,
-0x00, 0x2B, 0x00, 0xD0, 0x40, 0x42, 0x11, 0x99, 0x5A, 0x24, 0x24, 0x1A,
-0x08, 0x70, 0x20, 0x1C, 0xFF, 0xF7, 0x8A, 0xFE, 0x09, 0x90, 0x20, 0x1C,
-0xFF, 0xF7, 0x74, 0xFE, 0x0B, 0x9A, 0x0A, 0x90, 0x01, 0x23, 0xD3, 0x56,
-0x17, 0x78, 0x0F, 0x93, 0x1A, 0x4B, 0x1B, 0x4A, 0x0A, 0x21, 0x58, 0x5E,
-0x00, 0x24, 0x10, 0x90, 0x28, 0x21, 0x50, 0x5E, 0x18, 0x49, 0x12, 0x90,
-0x09, 0x68, 0x58, 0x68, 0x07, 0x91, 0x13, 0x90, 0x08, 0x20, 0x19, 0x5E,
-0x1B, 0x68, 0x15, 0x91, 0x26, 0x20, 0x11, 0x5E, 0x17, 0x93, 0x16, 0x91,
-0x05, 0x94, 0x04, 0x94, 0x02, 0x94, 0xA8, 0xE0, 0x12, 0x98, 0x13, 0x99,
-0x78, 0x43, 0xFF, 0xF7, 0xA7, 0xFB, 0x10, 0x99, 0x00, 0xB2, 0x33, 0x68,
-0x08, 0x18, 0xC3, 0x1A, 0x03, 0x93, 0x0B, 0x9A, 0x03, 0x99, 0x03, 0x23,
-0x0A, 0x98, 0xD3, 0x56, 0x95, 0x78, 0x09, 0x9A, 0x48, 0x43, 0x4A, 0x43,
-0x14, 0x93, 0x7B, 0x1C, 0x18, 0x90, 0x98, 0x01, 0x19, 0x92, 0x0C, 0x93,
-0x0D, 0x90, 0x87, 0xE0, 0x24, 0x09, 0x00, 0x20, 0xAE, 0x09, 0x00, 0x20,
-0x38, 0x0D, 0x00, 0x20, 0x00, 0x20, 0x00, 0x40, 0xF8, 0x59, 0x00, 0x00,
-0xF4, 0x59, 0x00, 0x00, 0xEC, 0x02, 0x00, 0x20, 0x00, 0x40, 0x00, 0x40,
-0x50, 0x72, 0x00, 0x00, 0x0D, 0x99, 0xAA, 0x1C, 0x88, 0x18, 0x4E, 0x49,
-0x43, 0x5C, 0x0E, 0x2B, 0x25, 0xD9, 0x04, 0x23, 0x94, 0x46, 0x4C, 0x48,
-0x01, 0x3B, 0xDB, 0xB2, 0x4B, 0x49, 0xC2, 0x56, 0xC8, 0x56, 0xBA, 0x18,
-0x01, 0x32, 0x28, 0x18, 0x92, 0x01, 0x02, 0x30, 0x45, 0x49, 0x10, 0x18,
-0x0A, 0x5C, 0x01, 0x3A, 0xD2, 0xB2, 0x0D, 0x2A, 0x0E, 0xD8, 0x45, 0x48,
-0x0E, 0x99, 0x82, 0x56, 0x8A, 0x42, 0x09, 0xD1, 0x0D, 0x9B, 0x62, 0x46,
-0x9A, 0x18, 0x42, 0x48, 0x52, 0x00, 0x13, 0x5A, 0x07, 0x99, 0x5B, 0x1A,
-0x06, 0x93, 0x12, 0xE0, 0x00, 0x2B, 0xDC, 0xD1, 0x46, 0xE0, 0x00, 0x2B,
-0x44, 0xD0, 0x3B, 0x4A, 0x0E, 0x99, 0xD3, 0x18, 0x01, 0x3B, 0x1B, 0x78,
-0x5B, 0xB2, 0x8B, 0x42, 0x3C, 0xD1, 0x38, 0x4A, 0x40, 0x00, 0x83, 0x5A,
-0x07, 0x98, 0x1B, 0x1A, 0x06, 0x93, 0x06, 0x99, 0x00, 0x29, 0x33, 0xD0,
-0x16, 0x98, 0x17, 0x99, 0x68, 0x43, 0xFF, 0xF7, 0x39, 0xFB, 0x15, 0x9A,
-0x00, 0xB2, 0x73, 0x68, 0x10, 0x18, 0x1B, 0x1A, 0x01, 0x93, 0x01, 0x98,
-0x03, 0x9B, 0x06, 0x9A, 0x09, 0x99, 0x5A, 0x43, 0x41, 0x43, 0x06, 0x9B,
-0x43, 0x43, 0x18, 0x98, 0x09, 0x1A, 0x00, 0x29, 0x04, 0xDD, 0x05, 0x99,
-0xE4, 0x18, 0x89, 0x18, 0x05, 0x91, 0x03, 0xE0, 0x05, 0x98, 0xE4, 0x1A,
-0x80, 0x1A, 0x05, 0x90, 0x01, 0x99, 0x0A, 0x98, 0x48, 0x43, 0x19, 0x99,
-0x40, 0x18, 0x00, 0x28, 0x06, 0xDD, 0x02, 0x98, 0x04, 0x99, 0x80, 0x18,
-0xC9, 0x18, 0x02, 0x90, 0x04, 0x91, 0x05, 0xE0, 0x02, 0x98, 0x04, 0x99,
-0x80, 0x1A, 0xC9, 0x1A, 0x02, 0x90, 0x04, 0x91, 0x01, 0x35, 0xED, 0xB2,
-0x14, 0x9A, 0x95, 0x42, 0x86, 0xDD, 0x0C, 0xAB, 0x1F, 0x78, 0x0F, 0x98,
-0x87, 0x42, 0x00, 0xDC, 0x52, 0xE7, 0x08, 0x99, 0x02, 0x98, 0xFF, 0xF7,
-0xFB, 0xFA, 0x08, 0x99, 0x07, 0x1C, 0x04, 0x98, 0xFF, 0xF7, 0xF6, 0xFA,
-0x08, 0x99, 0x05, 0x1C, 0x05, 0x98, 0xFF, 0xF7, 0xF1, 0xFA, 0x08, 0x99,
-0x06, 0x1C, 0x20, 0x1C, 0xFF, 0xF7, 0xEC, 0xFA, 0x7F, 0x43, 0x76, 0x43,
-0x6D, 0x43, 0x40, 0x43, 0x11, 0x99, 0x7D, 0x19, 0x30, 0x18, 0xAD, 0x11,
-0x80, 0x11, 0x1B, 0xB0, 0x4D, 0x60, 0x88, 0x60, 0xF0, 0xBD, 0xC0, 0x46,
-0x00, 0x20, 0x00, 0x40, 0xF8, 0x59, 0x00, 0x00, 0xF4, 0x59, 0x00, 0x00,
-0xEC, 0x02, 0x00, 0x20, 0x00, 0x40, 0x00, 0x40, 0x08, 0xB5, 0x05, 0x4B,
-0x1B, 0x88, 0xDB, 0xB2, 0x10, 0x2B, 0x01, 0xD0, 0xAF, 0x2B, 0x01, 0xD1,
-0xFD, 0xF7, 0x8A, 0xF9, 0x08, 0xBD, 0xC0, 0x46, 0x28, 0x00, 0x00, 0x20,
-0x38, 0xB5, 0xC1, 0x4A, 0x13, 0x88, 0x1B, 0xB2, 0xAE, 0x2B, 0x00, 0xD1,
-0x59, 0xE1, 0x3B, 0xDC, 0x0C, 0x2B, 0x00, 0xD1, 0xD2, 0xE0, 0x1B, 0xDC,
-0x05, 0x2B, 0x00, 0xD1, 0xA6, 0xE0, 0x08, 0xDC, 0x03, 0x2B, 0x00, 0xD1,
-0x8F, 0xE0, 0x00, 0xDD, 0x96, 0xE0, 0x02, 0x2B, 0x00, 0xD0, 0xA5, 0xE1,
-0x7C, 0xE0, 0x09, 0x2B, 0x00, 0xD1, 0xA4, 0xE0, 0x03, 0xDC, 0x06, 0x2B,
-0x00, 0xD0, 0x9D, 0xE1, 0x99, 0xE0, 0x0A, 0x2B, 0x00, 0xD1, 0xAC, 0xE0,
-0x0B, 0x2B, 0x00, 0xD0, 0x96, 0xE1, 0xAD, 0xE0, 0x31, 0x2B, 0x00, 0xD1,
-0x95, 0xE0, 0x08, 0xDC, 0x10, 0x2B, 0x5A, 0xD0, 0x30, 0x2B, 0x00, 0xD1,
-0x9A, 0xE0, 0x0F, 0x2B, 0x00, 0xD0, 0x89, 0xE1, 0x48, 0xE0, 0x62, 0x2B,
-0x00, 0xD1, 0x81, 0xE1, 0x03, 0xDC, 0x61, 0x2B, 0x00, 0xD0, 0x81, 0xE1,
-0x77, 0xE1, 0x64, 0x2B, 0x00, 0xD1, 0x6F, 0xE1, 0xA8, 0x2B, 0x00, 0xD0,
-0x7A, 0xE1, 0x5B, 0xE1, 0xF4, 0x2B, 0x00, 0xD1, 0xBC, 0xE0, 0x19, 0xDC,
-0xEF, 0x2B, 0x00, 0xD1, 0x2E, 0xE1, 0x09, 0xDC, 0xBF, 0x2B, 0x00, 0xD1,
-0x50, 0xE1, 0xEE, 0x2B, 0x00, 0xD1, 0x23, 0xE1, 0xAF, 0x2B, 0x00, 0xD0,
-0x68, 0xE1, 0x11, 0xE1, 0xF1, 0x2B, 0x00, 0xD1, 0x91, 0xE0, 0x00, 0xDA,
-0x8C, 0xE0, 0xF2, 0x2B, 0x00, 0xD1, 0x94, 0xE0, 0xF3, 0x2B, 0x00, 0xD0,
-0x5C, 0xE1, 0x99, 0xE0, 0xF9, 0x2B, 0x00, 0xD1, 0xCD, 0xE0, 0x0B, 0xDC,
-0xF6, 0x2B, 0x00, 0xD1, 0xAD, 0xE0, 0x00, 0xDA, 0xA1, 0xE0, 0xF7, 0x2B,
-0x00, 0xD1, 0xAF, 0xE0, 0xF8, 0x2B, 0x00, 0xD0, 0x4C, 0xE1, 0xB7, 0xE0,
-0xFB, 0x2B, 0x00, 0xD1, 0xCF, 0xE0, 0x00, 0xDA, 0xC4, 0xE0, 0xFC, 0x2B,
-0x00, 0xD1, 0xD3, 0xE0, 0xFD, 0x2B, 0x00, 0xD0, 0x40, 0xE1, 0xD8, 0xE0,
-0x83, 0x4C, 0x23, 0x68, 0x00, 0x2B, 0x01, 0xD1, 0xFD, 0xF7, 0x02, 0xF9,
-0x22, 0x68, 0x81, 0x4B, 0xD2, 0x00, 0x1A, 0x70, 0x34, 0xE1, 0x80, 0x49,
-0x80, 0x4A, 0x00, 0x23, 0x08, 0x78, 0x7D, 0x4D, 0xC0, 0x18, 0x14, 0x5C,
-0x58, 0x19, 0x01, 0x33, 0x04, 0x70, 0x08, 0x2B, 0xF6, 0xD1, 0x27, 0xE1,
-0x7B, 0x4A, 0x0F, 0x23, 0x26, 0x20, 0x11, 0x5E, 0x28, 0x25, 0x52, 0x5F,
-0x09, 0x11, 0x12, 0x12, 0x99, 0x43, 0x13, 0x40, 0x73, 0x4A, 0xCB, 0x18,
-0x13, 0x70, 0x70, 0x4B, 0x1A, 0x88, 0x03, 0x23, 0x12, 0xB2, 0x9A, 0x1A,
-0x72, 0x4B, 0x19, 0x8D, 0x6E, 0x4B, 0xD1, 0x54, 0x6B, 0x4B, 0x1A, 0x88,
-0x04, 0x23, 0x12, 0xB2, 0x9A, 0x1A, 0x6E, 0x4B, 0xD9, 0x8C, 0x6A, 0x4B,
-0xD1, 0x54, 0x07, 0xE1, 0x6C, 0x4B, 0xDA, 0x8C, 0x67, 0x4B, 0x1A, 0x70,
-0x02, 0xE1, 0x6A, 0x4B, 0x34, 0x33, 0x1A, 0x78, 0x64, 0x4B, 0x1A, 0x70,
-0xFC, 0xE0, 0x68, 0x4B, 0x1A, 0x78, 0x62, 0x4B, 0x00, 0x2A, 0x02, 0xD0,
-0x02, 0x22, 0x1A, 0x70, 0xF4, 0xE0, 0x01, 0x22, 0x1A, 0x70, 0xF1, 0xE0,
-0x62, 0x4B, 0x1A, 0x78, 0x5C, 0x4B, 0x1A, 0x70, 0xEC, 0xE0, 0x61, 0x4B,
-0x1A, 0x78, 0x5A, 0x4B, 0x1A, 0x70, 0xE7, 0xE0, 0x12, 0x88, 0x5F, 0x4B,
-0x12, 0xB2, 0x19, 0x78, 0x0B, 0x23, 0x9A, 0x1A, 0x55, 0x4B, 0xD1, 0x54,
-0x52, 0x4B, 0x1A, 0x88, 0x5A, 0x4B, 0x12, 0xB2, 0x59, 0x78, 0x0C, 0x23,
-0x9A, 0x1A, 0x51, 0x4B, 0xD1, 0x54, 0xD5, 0xE0, 0x4F, 0x4B, 0x42, 0x22,
-0x1A, 0x70, 0x4C, 0x4B, 0x01, 0x21, 0x1A, 0x88, 0xF1, 0x23, 0x12, 0xB2,
-0x9A, 0x1A, 0x4B, 0x4B, 0xD1, 0x54, 0x48, 0x4B, 0x1A, 0x88, 0x4C, 0x4B,
-0x12, 0xB2, 0x59, 0x78, 0xF2, 0x23, 0x9A, 0x1A, 0x46, 0x4B, 0xD1, 0x54,
-0x43, 0x4B, 0xBB, 0x21, 0x1A, 0x88, 0xF3, 0x23, 0x12, 0xB2, 0x9A, 0x1A,
-0x42, 0x4B, 0xD1, 0x54, 0x3F, 0x4B, 0x1A, 0x88, 0x48, 0x4B, 0x12, 0xB2,
-0x19, 0x78, 0xF4, 0x23, 0x9A, 0x1A, 0x3E, 0x4B, 0xD1, 0x54, 0x3B, 0x4B,
-0x1A, 0x88, 0x45, 0x4B, 0x12, 0xB2, 0x19, 0x78, 0xF5, 0x23, 0x9A, 0x1A,
-0x39, 0x4B, 0xD1, 0x54, 0xA6, 0xE0, 0x39, 0x4B, 0x3A, 0x4A, 0x1B, 0x78,
-0xD3, 0x18, 0xDA, 0x78, 0x35, 0x4B, 0x1A, 0x70, 0x32, 0x4B, 0x37, 0x49,
-0x1A, 0x88, 0x34, 0x4B, 0x12, 0xB2, 0x1B, 0x78, 0xCB, 0x18, 0x19, 0x79,
-0xF7, 0x23, 0x9A, 0x1A, 0x2F, 0x4B, 0xD1, 0x54, 0x2C, 0x4B, 0x1A, 0x88,
-0x30, 0x4B, 0x12, 0xB2, 0x59, 0x79, 0xF8, 0x23, 0x9A, 0x1A, 0x2B, 0x4B,
-0xD1, 0x54, 0x28, 0x4B, 0x1A, 0x88, 0x2C, 0x4B, 0x12, 0xB2, 0x99, 0x79,
-0xF9, 0x23, 0x9A, 0x1A, 0x26, 0x4B, 0xD1, 0x54, 0x23, 0x4B, 0x1A, 0x88,
-0x27, 0x4B, 0x12, 0xB2, 0xD9, 0x79, 0xFA, 0x23, 0x9A, 0x1A, 0x22, 0x4B,
-0xD1, 0x54, 0x1F, 0x4B, 0x1A, 0x88, 0x23, 0x4B, 0x12, 0xB2, 0x19, 0x7A,
-0xFB, 0x23, 0x9A, 0x1A, 0x1D, 0x4B, 0xD1, 0x54, 0x1A, 0x4B, 0x1A, 0x88,
-0x1E, 0x4B, 0x12, 0xB2, 0x59, 0x7A, 0xFC, 0x23, 0x9A, 0x1A, 0x19, 0x4B,
-0xD1, 0x54, 0x16, 0x4B, 0x1A, 0x88, 0x1A, 0x4B, 0x12, 0xB2, 0x99, 0x7A,
-0xFD, 0x23, 0x9A, 0x1A, 0x14, 0x4B, 0xD1, 0x54, 0x5C, 0xE0, 0x1D, 0x4B,
-0x1A, 0x78, 0x12, 0x4B, 0x1A, 0x70, 0xFD, 0xF7, 0x1F, 0xF8, 0x55, 0xE0,
-0x1A, 0x49, 0x10, 0x4A, 0x00, 0x23, 0x0C, 0x68, 0x10, 0x78, 0x0D, 0x4D,
-0x20, 0x18, 0xC4, 0x5C, 0x58, 0x19, 0x01, 0x33, 0x04, 0x70, 0x08, 0x2B,
-0xF5, 0xD1, 0x47, 0xE0, 0x0B, 0x4B, 0x1A, 0x7E, 0x07, 0x4B, 0x1A, 0x70,
-0x04, 0x4B, 0x1A, 0x88, 0x08, 0x4B, 0x12, 0xB2, 0xD9, 0x7D, 0xEF, 0x23,
-0x9A, 0x1A, 0x03, 0x4B, 0xD1, 0x54, 0x39, 0xE0, 0x28, 0x00, 0x00, 0x20,
-0x98, 0x0D, 0x00, 0x20, 0x0C, 0x00, 0x00, 0x50, 0x2A, 0x00, 0x00, 0x20,
-0xEC, 0x11, 0x00, 0x20, 0xAE, 0x09, 0x00, 0x20, 0x48, 0x0D, 0x00, 0x20,
-0xDD, 0x01, 0x00, 0x20, 0xDF, 0x01, 0x00, 0x20, 0x0A, 0x03, 0x00, 0x20,
-0xFF, 0x73, 0x00, 0x00, 0xFF, 0x7B, 0x00, 0x00, 0xF6, 0x03, 0x00, 0x20,
-0x34, 0x0D, 0x00, 0x20, 0x0F, 0x49, 0x10, 0x4A, 0x00, 0x23, 0x0C, 0x68,
-0x10, 0x78, 0x0F, 0x4D, 0x20, 0x18, 0xC4, 0x5C, 0x58, 0x19, 0x01, 0x33,
-0x04, 0x70, 0x08, 0x2B, 0xF5, 0xD1, 0xFC, 0xF7, 0xD7, 0xFF, 0x0D, 0xE0,
-0x0A, 0x4B, 0x1A, 0x78, 0x08, 0x4B, 0x1A, 0x70, 0x08, 0xE0, 0x09, 0x4B,
-0x9A, 0x78, 0x06, 0x4B, 0x1A, 0x70, 0x03, 0xE0, 0x06, 0x4B, 0xDA, 0x78,
-0x03, 0x4B, 0x1A, 0x70, 0x38, 0xBD, 0xC0, 0x46, 0x34, 0x0D, 0x00, 0x20,
-0x2A, 0x00, 0x00, 0x20, 0x0C, 0x00, 0x00, 0x50, 0xFF, 0x5B, 0x00, 0x00,
-0x35, 0x00, 0x00, 0x20, 0x08, 0xB5, 0x03, 0x1C, 0x50, 0x1E, 0x06, 0x28,
-0x35, 0xD8, 0xFF, 0xF7, 0x93, 0xF8, 0x04, 0x0A, 0x2A, 0x1B, 0x15, 0x2A,
-0x2A, 0x00, 0x18, 0x4A, 0x01, 0x23, 0x13, 0x70, 0x17, 0x4A, 0x13, 0x70,
-0x29, 0xE0, 0x16, 0x4A, 0x9B, 0x01, 0x59, 0x18, 0x02, 0x20, 0x15, 0x4B,
-0x10, 0x70, 0x49, 0x00, 0x14, 0x4A, 0xC9, 0x18, 0x11, 0x60, 0x1E, 0xE0,
-0xFC, 0xF7, 0x9E, 0xFF, 0x0E, 0x4B, 0x00, 0x22, 0x1A, 0x70, 0x18, 0xE0,
-0x0D, 0x4A, 0x5B, 0x01, 0x59, 0x18, 0x01, 0x20, 0x0E, 0x4B, 0x10, 0x70,
-0x5A, 0x56, 0x0E, 0x4B, 0x00, 0x2A, 0x00, 0xDC, 0x00, 0x22, 0x1A, 0x80,
-0x09, 0x4A, 0x13, 0x60, 0x09, 0xE0, 0x06, 0x4A, 0x02, 0x20, 0x5B, 0x01,
-0x10, 0x70, 0xC9, 0x18, 0x08, 0x4A, 0x49, 0x00, 0x89, 0x18, 0x04, 0x4A,
-0x11, 0x60, 0x08, 0xBD, 0xE5, 0x01, 0x00, 0x20, 0xF6, 0x03, 0x00, 0x20,
-0x84, 0x40, 0x00, 0x40, 0x34, 0x0D, 0x00, 0x20, 0x64, 0x0E, 0x00, 0x20,
-0x08, 0x03, 0x00, 0x20, 0xF8, 0x03, 0x00, 0x20, 0xF0, 0xB5, 0x87, 0x4C,
-0x23, 0x23, 0xE3, 0x5C, 0x8D, 0xB0, 0x00, 0x2B, 0x12, 0xD0, 0x01, 0x3B,
-0xDB, 0xB2, 0x84, 0x4D, 0x84, 0x49, 0x00, 0xE0, 0x13, 0x1C, 0x9A, 0x00,
-0xD2, 0x18, 0x52, 0x00, 0x8A, 0x18, 0x3C, 0x26, 0x90, 0x5F, 0x5A, 0x1E,
-0x46, 0x1E, 0xB0, 0x41, 0xE8, 0x54, 0xD2, 0xB2, 0x00, 0x2B, 0xF1, 0xD1,
-0xFC, 0xF7, 0x82, 0xFF, 0x00, 0x28, 0xFB, 0xD1, 0x23, 0x23, 0xE4, 0x5C,
-0x07, 0x94, 0x00, 0x2C, 0x00, 0xD1, 0xA3, 0xE0, 0x78, 0x4B, 0x60, 0x22,
-0x19, 0x78, 0x78, 0x4B, 0x09, 0x01, 0x1B, 0x78, 0x52, 0x42, 0x0A, 0x43,
-0x76, 0x4C, 0x20, 0x21, 0x1B, 0x01, 0x0B, 0x43, 0x34, 0x21, 0x61, 0x5C,
-0x74, 0x48, 0x09, 0x91, 0x00, 0x21, 0x74, 0x4F, 0x08, 0x91, 0x6E, 0x49,
-0xD2, 0xB2, 0xDB, 0xB2, 0x0A, 0x92, 0x0B, 0x93, 0xC4, 0x19, 0x00, 0x23,
-0x01, 0x22, 0x01, 0x91, 0x3E, 0xE0, 0x01, 0x99, 0x6E, 0x4D, 0x6F, 0x4F,
-0xC9, 0x18, 0x8C, 0x46, 0x79, 0x5D, 0x6E, 0x4F, 0xFD, 0x18, 0x67, 0x46,
-0xBF, 0x88, 0x04, 0x97, 0xAF, 0x88, 0x06, 0x97, 0x67, 0x46, 0x3F, 0x8C,
-0xBC, 0x46, 0x2F, 0x8B, 0x03, 0x97, 0x00, 0x29, 0x22, 0xD1, 0x61, 0x46,
-0x09, 0xB2, 0x6F, 0x46, 0x05, 0x91, 0x0C, 0x37, 0x00, 0x21, 0x79, 0x5E,
-0x05, 0x9F, 0x79, 0x1A, 0xCF, 0x17, 0xC9, 0x19, 0x79, 0x40, 0x09, 0x9F,
-0xB9, 0x42, 0x65, 0xDA, 0x10, 0x27, 0x69, 0x46, 0x79, 0x5E, 0x03, 0x91,
-0x69, 0x46, 0x18, 0x31, 0x00, 0x27, 0xCF, 0x5F, 0x03, 0x99, 0xCF, 0x1B,
-0xF9, 0x17, 0x7F, 0x18, 0x4F, 0x40, 0x09, 0x99, 0xB9, 0x42, 0x55, 0xDD,
-0x2C, 0x27, 0xED, 0x5F, 0x00, 0x2D, 0x57, 0xDD, 0x07, 0x9E, 0x55, 0x1C,
-0x02, 0x33, 0x01, 0x30, 0x0C, 0x34, 0x96, 0x42, 0x45, 0xDD, 0x2A, 0x1C,
-0x01, 0x9D, 0x9E, 0x00, 0xF6, 0x18, 0xAE, 0x19, 0x3C, 0x27, 0xF5, 0x5F,
-0x00, 0x2D, 0xB8, 0xDC, 0x4D, 0x4E, 0xF5, 0x18, 0x2C, 0x27, 0xEE, 0x5F,
-0x00, 0x2E, 0xE9, 0xDD, 0x06, 0x78, 0x00, 0x2E, 0xE6, 0xD0, 0x05, 0x21,
-0x69, 0x56, 0x2E, 0x8B, 0x8C, 0x46, 0x08, 0x99, 0xAD, 0x88, 0xC9, 0x00,
-0x37, 0xB2, 0x03, 0x91, 0x04, 0x95, 0x61, 0x46, 0x0F, 0x25, 0x0D, 0x40,
-0x3F, 0x11, 0x0F, 0x21, 0x8F, 0x43, 0x03, 0x99, 0x2F, 0x43, 0x8C, 0x46,
-0x3E, 0x49, 0x08, 0x9D, 0x8C, 0x44, 0x0B, 0x99, 0x01, 0x35, 0x11, 0x43,
-0x05, 0x95, 0x65, 0x46, 0x29, 0x70, 0x6F, 0x70, 0x6D, 0x46, 0x10, 0x27,
-0x7F, 0x5D, 0x00, 0x21, 0x65, 0x46, 0xEE, 0x70, 0xAF, 0x70, 0x29, 0x71,
-0x69, 0x71, 0xA9, 0x71, 0xE9, 0x71, 0x14, 0x26, 0x6D, 0x46, 0x75, 0x5D,
-0x07, 0x9E, 0x08, 0x95, 0x01, 0x70, 0x55, 0x1C, 0x02, 0x33, 0x01, 0x30,
-0x0C, 0x34, 0x96, 0x42, 0xB9, 0xDC, 0x08, 0x9F, 0x00, 0x2F, 0x42, 0xD1,
-0x0D, 0xB0, 0xF0, 0xBD, 0x2D, 0x4F, 0xD7, 0x19, 0x01, 0x3F, 0x3F, 0x78,
-0x00, 0x2F, 0xA3, 0xD0, 0x69, 0x46, 0x10, 0x27, 0x7D, 0x5E, 0x08, 0x99,
-0x2D, 0x12, 0x03, 0x95, 0xC9, 0x00, 0x05, 0x9D, 0x02, 0x91, 0x03, 0x99,
-0x2F, 0x11, 0x0F, 0x25, 0x0D, 0x40, 0x40, 0x36, 0x03, 0x95, 0x36, 0x78,
-0x0F, 0x25, 0xAF, 0x43, 0x05, 0x97, 0x06, 0x96, 0x02, 0x9F, 0x1E, 0x4E,
-0x05, 0x99, 0xF5, 0x19, 0x0A, 0x9F, 0x03, 0x9E, 0x17, 0x43, 0x0E, 0x43,
-0x2F, 0x70, 0x6E, 0x70, 0x10, 0x27, 0x6E, 0x46, 0xBE, 0x5D, 0x69, 0x46,
-0xAE, 0x70, 0x18, 0x26, 0x71, 0x5C, 0x67, 0x46, 0xEF, 0x70, 0x29, 0x71,
-0x26, 0x78, 0x6E, 0x71, 0x66, 0x68, 0xFF, 0x2E, 0x00, 0xDD, 0xFF, 0x26,
-0xAE, 0x71, 0xA6, 0x68, 0xFF, 0x2E, 0x00, 0xDD, 0xFF, 0x26, 0x08, 0x9F,
-0xEE, 0x71, 0x01, 0x37, 0xFF, 0xB2, 0x01, 0x25, 0x08, 0x97, 0x05, 0x70,
-0x6C, 0xE7, 0x0E, 0x4B, 0x1F, 0x60, 0xFC, 0xF7, 0x39, 0xFE, 0xB7, 0xE7,
-0xAE, 0x09, 0x00, 0x20, 0xEC, 0x01, 0x00, 0x20, 0x9C, 0x0D, 0x00, 0x20,
-0xF5, 0x00, 0x00, 0x20, 0xF4, 0x00, 0x00, 0x20, 0x48, 0x0D, 0x00, 0x20,
-0xF4, 0x16, 0x00, 0x20, 0x38, 0xFC, 0xFF, 0xFF, 0x04, 0x05, 0x00, 0x00,
-0xEC, 0x11, 0x00, 0x20, 0x20, 0x01, 0x00, 0x20, 0x64, 0x01, 0x00, 0x20,
-0x98, 0x0D, 0x00, 0x20, 0x10, 0xB5, 0x04, 0x1C, 0xFC, 0xF7, 0x70, 0xFE,
-0x00, 0x28, 0xFB, 0xD1, 0x0A, 0x4B, 0x01, 0x2C, 0x02, 0xD0, 0x02, 0x2C,
-0x05, 0xD1, 0x02, 0xE0, 0x0F, 0x22, 0x1A, 0x70, 0x01, 0xE0, 0x0E, 0x22,
-0x1A, 0x70, 0x00, 0x22, 0xDA, 0x70, 0x9A, 0x70, 0x5A, 0x70, 0x04, 0x4B,
-0x01, 0x22, 0x1A, 0x60, 0xFC, 0xF7, 0x04, 0xFE, 0x10, 0xBD, 0xC0, 0x46,
-0xEC, 0x11, 0x00, 0x20, 0x98, 0x0D, 0x00, 0x20, 0xF0, 0xB5, 0x8B, 0xB0,
-0x14, 0x28, 0x00, 0xD9, 0xA3, 0xE3, 0xFE, 0xF7, 0x09, 0xFF, 0x15, 0x00,
-0xA2, 0x03, 0x43, 0x00, 0xA2, 0x03, 0x59, 0x00, 0xA2, 0x03, 0x64, 0x00,
-0x88, 0x00, 0xA2, 0x03, 0xFB, 0x00, 0xA2, 0x03, 0xA2, 0x03, 0x48, 0x01,
-0xA2, 0x03, 0x54, 0x01, 0x30, 0x03, 0xB7, 0x02, 0xA2, 0x03, 0xA2, 0x03,
-0x8C, 0x03, 0x9D, 0x03, 0xC0, 0x4B, 0x1B, 0x78, 0x00, 0x2B, 0x00, 0xD0,
-0x87, 0xE3, 0xBF, 0x4C, 0x01, 0x23, 0xF2, 0x20, 0x23, 0x72, 0xE0, 0x70,
-0xFE, 0xF7, 0xD8, 0xFD, 0xBC, 0x4B, 0x20, 0x70, 0x1B, 0x78, 0xAA, 0x2B,
-0x00, 0xD0, 0x7A, 0xE3, 0xBA, 0x4A, 0xBB, 0x4B, 0x11, 0x78, 0xBB, 0x4A,
-0x1B, 0x78, 0x12, 0x78, 0xC9, 0x18, 0x91, 0x42, 0x00, 0xD0, 0x70, 0xE3,
-0xB8, 0x4A, 0xE0, 0x78, 0x40, 0x32, 0x12, 0x78, 0x59, 0xB2, 0x41, 0x18,
-0x89, 0x18, 0xFF, 0x29, 0x03, 0xDD, 0xD2, 0x43, 0xD2, 0xB2, 0xE2, 0x70,
-0x63, 0xE3, 0xE2, 0x78, 0xD3, 0x18, 0xDB, 0xB2, 0xE3, 0x70, 0x5E, 0xE3,
-0xB0, 0x4A, 0x00, 0x23, 0x13, 0x70, 0xA0, 0x21, 0xAF, 0x4A, 0xC9, 0x00,
-0x53, 0x54, 0xAF, 0x49, 0xA1, 0x20, 0x53, 0x54, 0xAE, 0x49, 0xC0, 0x00,
-0x53, 0x54, 0x0A, 0x21, 0x12, 0x18, 0x01, 0x39, 0xC9, 0xB2, 0x88, 0x18,
-0x03, 0x70, 0x00, 0x29, 0xF9, 0xD1, 0x48, 0xE3, 0xA9, 0x49, 0x00, 0x23,
-0x0A, 0x68, 0x9A, 0x42, 0x02, 0xDD, 0x4B, 0x68, 0xD3, 0x18, 0xDB, 0x0F,
-0xA6, 0x4A, 0x13, 0x70, 0x3D, 0xE3, 0xA6, 0x4B, 0xA0, 0x49, 0x9B, 0x69,
-0xA0, 0x4A, 0x00, 0x2B, 0x0D, 0xD1, 0x8B, 0x5C, 0x19, 0x20, 0x01, 0x2B,
-0x11, 0xD0, 0xA2, 0x4B, 0x1B, 0x78, 0x01, 0x2B, 0x02, 0xD1, 0xA1, 0x4B,
-0x98, 0x7E, 0x0A, 0xE0, 0xA0, 0x4B, 0x98, 0x7E, 0x07, 0xE0, 0x8A, 0x5C,
-0x08, 0x20, 0x01, 0x2A, 0x03, 0xD1, 0x19, 0x20, 0x03, 0x2B, 0x00, 0xD0,
-0x08, 0x20, 0x9C, 0x4B, 0x80, 0x01, 0x19, 0x68, 0xFE, 0xF7, 0xDC, 0xFE,
-0x8E, 0x4B, 0x98, 0x76, 0x19, 0xE3, 0x94, 0x4B, 0x00, 0x22, 0x1A, 0x60,
-0x93, 0x4A, 0x11, 0x78, 0x96, 0x4A, 0x00, 0x29, 0x03, 0xD0, 0x02, 0x21,
-0x11, 0x70, 0x08, 0x27, 0x08, 0xE0, 0x01, 0x21, 0x11, 0x70, 0x8B, 0x4A,
-0x06, 0x27, 0x08, 0x21, 0x52, 0x5E, 0x22, 0x2A, 0x00, 0xDC, 0x03, 0x27,
-0x5D, 0x69, 0x1C, 0x69, 0x1B, 0x68, 0x00, 0x26, 0x05, 0x95, 0x04, 0x94,
-0x03, 0x93, 0x02, 0x96, 0x1A, 0x25, 0x47, 0xE0, 0x00, 0x20, 0x0E, 0x23,
-0xAE, 0x1C, 0x01, 0x3B, 0xDB, 0xB2, 0x5A, 0x1C, 0x92, 0x01, 0x87, 0x49,
-0x92, 0x19, 0x52, 0x00, 0x52, 0x5A, 0x0C, 0x1C, 0x12, 0xB2, 0x80, 0x18,
-0x00, 0x2B, 0xF2, 0xD1, 0x1C, 0x21, 0xFE, 0xF7, 0xA7, 0xFE, 0xFA, 0x0F,
-0x06, 0x90, 0x0E, 0x23, 0x07, 0x92, 0x01, 0x3B, 0xDB, 0xB2, 0x58, 0x1C,
-0x82, 0x01, 0x92, 0x19, 0x00, 0x90, 0x52, 0x00, 0xA2, 0x5A, 0x90, 0xB2,
-0x11, 0xB2, 0x02, 0x9A, 0x8A, 0x42, 0x03, 0xDA, 0xC1, 0xB2, 0x02, 0x91,
-0x05, 0x95, 0x04, 0x93, 0x06, 0x9A, 0x80, 0x1A, 0x80, 0xB2, 0x01, 0x90,
-0x68, 0x46, 0x04, 0x22, 0x82, 0x5E, 0x00, 0x98, 0x81, 0x01, 0x89, 0x19,
-0x49, 0x00, 0x00, 0x2A, 0x0D, 0xDD, 0x00, 0x91, 0x68, 0x46, 0x61, 0x5A,
-0x81, 0x88, 0x00, 0x98, 0x21, 0x52, 0x07, 0x98, 0xD1, 0x17, 0xBA, 0x42,
-0x41, 0x41, 0x03, 0x9A, 0x52, 0x18, 0x03, 0x92, 0x02, 0xE0, 0x00, 0x20,
-0x62, 0x5A, 0x60, 0x52, 0x00, 0x2B, 0xCE, 0xD1, 0x01, 0x3D, 0xED, 0xB2,
-0xFF, 0x2D, 0xB3, 0xD1, 0x5E, 0x4B, 0x04, 0x9C, 0x05, 0x9D, 0x03, 0x9E,
-0x1C, 0x61, 0x5D, 0x61, 0x1E, 0x60, 0xA6, 0xE2, 0x61, 0x4B, 0x62, 0x48,
-0x00, 0x24, 0x1C, 0x60, 0x82, 0x68, 0xC3, 0x68, 0x9A, 0x42, 0x00, 0xDA,
-0x9D, 0xE2, 0x0C, 0x25, 0xD6, 0x0F, 0x95, 0x42, 0x66, 0x41, 0x92, 0x19,
-0xDE, 0x17, 0x41, 0x68, 0xF6, 0x1A, 0x00, 0x68, 0xF6, 0x0F, 0x9B, 0x1B,
-0x18, 0x27, 0xC6, 0x0F, 0x87, 0x42, 0x66, 0x41, 0x80, 0x19, 0xCE, 0x17,
-0x76, 0x1A, 0xF6, 0x0F, 0x89, 0x1B, 0x41, 0x1A, 0xC8, 0x0F, 0x8D, 0x42,
-0x44, 0x41, 0xE4, 0xB2, 0x00, 0x2C, 0x08, 0xD1, 0xD3, 0x1A, 0xD9, 0x0F,
-0x0B, 0x22, 0x9A, 0x42, 0x4C, 0x41, 0xE4, 0xB2, 0x00, 0x2C, 0x00, 0xD1,
-0x79, 0xE2, 0x4D, 0x4B, 0x1A, 0x78, 0x0E, 0x23, 0x00, 0x2A, 0x13, 0xD1,
-0x73, 0xE2, 0x5F, 0x1C, 0x1A, 0x22, 0xBF, 0x01, 0x01, 0x3A, 0xD2, 0xB2,
-0x91, 0x1C, 0x79, 0x18, 0x0D, 0x5D, 0x00, 0x2D, 0x02, 0xD0, 0x01, 0x25,
-0x0D, 0x55, 0x02, 0xE0, 0x49, 0x00, 0x0E, 0x5A, 0x0D, 0x52, 0x00, 0x2A,
-0xF0, 0xD1, 0x01, 0xE0, 0x41, 0x4C, 0x3D, 0x48, 0x01, 0x3B, 0xDB, 0xB2,
-0xFF, 0x2B, 0xE6, 0xD1, 0x59, 0xE2, 0x3F, 0x4B, 0x34, 0x33, 0x1A, 0x78,
-0x00, 0x2A, 0x00, 0xD0, 0x53, 0xE2, 0x01, 0x22, 0x1A, 0x70, 0x02, 0x20,
-0xFF, 0xF7, 0x86, 0xFE, 0x4D, 0xE2, 0x2E, 0x4B, 0x2B, 0x4A, 0x99, 0x69,
-0x01, 0x29, 0x73, 0xD0, 0x2C, 0x48, 0x04, 0x78, 0xFF, 0x20, 0x01, 0x2C,
-0x00, 0xD0, 0x10, 0x20, 0x14, 0x89, 0x25, 0x1C, 0x0B, 0x3D, 0xAD, 0xB2,
-0x09, 0x2D, 0x00, 0xD9, 0x82, 0xE0, 0x0C, 0x27, 0xD2, 0x5F, 0x05, 0x2A,
-0x00, 0xDD, 0x7D, 0xE0, 0x2E, 0x4A, 0x24, 0xB2, 0x40, 0x32, 0x12, 0x78,
-0xA2, 0x42, 0x77, 0xDA, 0x2C, 0x4A, 0x12, 0x68, 0x82, 0x42, 0x73, 0xDA,
-0x00, 0x29, 0x03, 0xD1, 0x1C, 0x4B, 0x03, 0x22, 0x9A, 0x61, 0x6F, 0xE0,
-0x03, 0x29, 0x6D, 0xD1, 0x15, 0x4A, 0x14, 0x4B, 0x99, 0x5C, 0xA0, 0x22,
-0xD2, 0x00, 0x01, 0x29, 0x03, 0xD1, 0x99, 0x5C, 0x01, 0x31, 0x99, 0x54,
-0x02, 0xE0, 0x99, 0x5C, 0x02, 0x31, 0x99, 0x54, 0x9A, 0x5C, 0x01, 0x2A,
-0x5C, 0xD9, 0x11, 0x4A, 0x01, 0x21, 0x91, 0x61, 0xA0, 0x22, 0x00, 0x21,
-0xD2, 0x00, 0x99, 0x54, 0x54, 0xE0, 0xC0, 0x46, 0xE5, 0x01, 0x00, 0x20,
-0xAA, 0x0A, 0x00, 0x20, 0x28, 0x7C, 0x00, 0x00, 0x29, 0x7C, 0x00, 0x00,
-0x2A, 0x7C, 0x00, 0x00, 0x2B, 0x7C, 0x00, 0x00, 0x48, 0x0D, 0x00, 0x20,
-0x54, 0x00, 0x00, 0x20, 0xEC, 0x11, 0x00, 0x20, 0x0C, 0x05, 0x00, 0x00,
-0x04, 0x05, 0x00, 0x00, 0x70, 0x01, 0x00, 0x20, 0x3D, 0x11, 0x00, 0x20,
-0xF8, 0x08, 0x00, 0x20, 0xDD, 0x01, 0x00, 0x20, 0x9A, 0x74, 0x00, 0x00,
-0x4A, 0x74, 0x00, 0x00, 0x78, 0x09, 0x00, 0x20, 0x40, 0x00, 0x00, 0x20,
-0x00, 0x40, 0x00, 0x40, 0x38, 0x0D, 0x00, 0x20, 0xE4, 0x10, 0x00, 0x20,
-0xF5, 0x00, 0x00, 0x20, 0x00, 0x20, 0x00, 0x40, 0xAE, 0x09, 0x00, 0x20,
-0x9C, 0x0D, 0x00, 0x20, 0x4C, 0x11, 0x00, 0x20, 0x10, 0x89, 0xC7, 0x49,
-0x04, 0x1C, 0x0A, 0x3C, 0xA4, 0xB2, 0x0A, 0x2C, 0x0B, 0xD8, 0x0C, 0x24,
-0x12, 0x5F, 0x05, 0x2A, 0x07, 0xDC, 0x0A, 0x1C, 0x40, 0x32, 0x12, 0x78,
-0x00, 0xB2, 0x82, 0x42, 0x01, 0xDA, 0x00, 0x22, 0xDA, 0x60, 0xDA, 0x68,
-0x59, 0x2A, 0x05, 0xDC, 0x09, 0x68, 0x00, 0x29, 0x04, 0xD1, 0x01, 0x32,
-0xDA, 0x60, 0x01, 0xE0, 0x00, 0x22, 0x9A, 0x61, 0xB9, 0x4B, 0x1A, 0x78,
-0xB9, 0x4B, 0x00, 0x2A, 0x08, 0xD1, 0x99, 0x69, 0x01, 0x29, 0x05, 0xD1,
-0xB7, 0x49, 0x08, 0x25, 0x49, 0x5F, 0x21, 0x29, 0x00, 0xDD, 0x9A, 0x61,
-0x99, 0x69, 0xB5, 0x4B, 0x01, 0x29, 0x06, 0xD1, 0x3C, 0x22, 0xDA, 0x85,
-0x0F, 0x22, 0xDA, 0x84, 0x0A, 0x22, 0x1A, 0x85, 0x0A, 0xE0, 0x2D, 0x20,
-0xD8, 0x85, 0x28, 0x21, 0x00, 0x2A, 0x02, 0xD0, 0xD8, 0x84, 0x19, 0x85,
-0x02, 0xE0, 0x23, 0x22, 0xD9, 0x84, 0x1A, 0x85, 0xA7, 0x4B, 0x19, 0x78,
-0x00, 0x29, 0x68, 0xD1, 0xA4, 0x4B, 0x1B, 0x68, 0x00, 0x2B, 0x64, 0xDD,
-0xA6, 0x4A, 0xA4, 0x4B, 0x12, 0x7F, 0x18, 0x7D, 0x52, 0xB2, 0x02, 0x92,
-0x1A, 0x69, 0x02, 0x38, 0x02, 0x3A, 0x02, 0x24, 0xC0, 0xB2, 0xD2, 0xB2,
-0x64, 0x42, 0x0F, 0x1C, 0x0B, 0x1C, 0x04, 0x90, 0x21, 0xE0, 0x1E, 0x1C,
-0x19, 0x22, 0x82, 0x42, 0x5E, 0x41, 0xF6, 0xB2, 0x00, 0x2E, 0x0F, 0xD0,
-0x66, 0x46, 0x00, 0x2E, 0x0C, 0xD0, 0x03, 0x9A, 0x86, 0x1C, 0x96, 0x19,
-0x98, 0x4A, 0x76, 0x00, 0xB6, 0x5A, 0x02, 0x9A, 0x96, 0x42, 0x03, 0xDB,
-0xF7, 0x19, 0x01, 0x31, 0xBF, 0xB2, 0xC9, 0xB2, 0x01, 0x30, 0x01, 0x35,
-0xC0, 0xB2, 0x03, 0x2D, 0xE3, 0xD1, 0x05, 0x9A, 0x01, 0x34, 0x01, 0x32,
-0xD2, 0xB2, 0x03, 0x2C, 0x0D, 0xD0, 0x0D, 0x25, 0x18, 0x1C, 0x95, 0x42,
-0x58, 0x41, 0x56, 0x1C, 0xC0, 0xB2, 0x02, 0x25, 0xB6, 0x01, 0x84, 0x46,
-0x6D, 0x42, 0x04, 0x98, 0x03, 0x96, 0x05, 0x92, 0xCF, 0xE7, 0x85, 0x4B,
-0x1E, 0x89, 0x83, 0x4B, 0x9C, 0x69, 0x00, 0x2C, 0x1D, 0xD1, 0xF5, 0x01,
-0x7D, 0x19, 0x2D, 0xB2, 0x01, 0x31, 0x28, 0x1C, 0xFE, 0xF7, 0xFC, 0xFC,
-0x81, 0x4B, 0x80, 0xB2, 0x27, 0x1C, 0x83, 0x42, 0x67, 0x41, 0xFB, 0xB2,
-0x00, 0x2B, 0x0E, 0xD0, 0x7E, 0x4B, 0xEA, 0x0F, 0xAB, 0x42, 0x54, 0x41,
-0xE4, 0xB2, 0x00, 0x2C, 0x07, 0xD0, 0x74, 0x4B, 0x36, 0xB2, 0x40, 0x33,
-0x1B, 0x78, 0xB3, 0x42, 0x01, 0xDD, 0xFB, 0xF7, 0x29, 0xFB, 0x78, 0x4B,
-0x0A, 0x24, 0x1A, 0x78, 0x6E, 0x4D, 0x53, 0x42, 0x5A, 0x41, 0x71, 0x4B,
-0x52, 0x00, 0x32, 0x33, 0x1A, 0x70, 0x27, 0x1C, 0x01, 0x3C, 0xE4, 0xB2,
-0x39, 0x1C, 0x61, 0x43, 0x6B, 0x18, 0x3C, 0x20, 0x1B, 0x5E, 0x00, 0x2B,
-0x15, 0xD0, 0x63, 0x00, 0xEB, 0x18, 0x04, 0x22, 0x9B, 0x5E, 0x0C, 0x20,
-0x08, 0x93, 0x23, 0x1C, 0x10, 0x33, 0x60, 0x43, 0x5B, 0x00, 0x5B, 0x5F,
-0x41, 0x30, 0x09, 0x93, 0x68, 0x4B, 0xFF, 0x30, 0x69, 0x18, 0xC0, 0x18,
-0x41, 0x31, 0x08, 0xAA, 0x23, 0x1C, 0xFE, 0xF7, 0x91, 0xFF, 0x3B, 0x1C,
-0x63, 0x43, 0x5A, 0x4E, 0x5B, 0x4A, 0xF6, 0x18, 0x38, 0x36, 0x33, 0x7A,
-0x10, 0x68, 0x58, 0x43, 0x60, 0x4B, 0x19, 0x68, 0xFE, 0xF7, 0xAE, 0xFC,
-0x30, 0x72, 0x00, 0x2C, 0xD0, 0xD1, 0xEA, 0xE0, 0x53, 0x4B, 0x1B, 0x78,
-0x00, 0x2B, 0x00, 0xD0, 0xE5, 0xE0, 0x54, 0x4B, 0x58, 0x49, 0x32, 0x33,
-0x18, 0x78, 0x50, 0x4B, 0x58, 0x4C, 0x9B, 0x69, 0x47, 0x1E, 0x02, 0x93,
-0x0B, 0x5D, 0xBC, 0x46, 0x0A, 0x22, 0x01, 0x3A, 0xD2, 0xB2, 0x0C, 0x21,
-0x51, 0x43, 0x51, 0x4C, 0x47, 0x4D, 0x61, 0x18, 0x0C, 0x1C, 0x05, 0x31,
-0xFF, 0x31, 0x4E, 0x6C, 0x0A, 0x21, 0x51, 0x43, 0xFC, 0x34, 0x69, 0x18,
-0xA7, 0x6C, 0x3C, 0x25, 0x4C, 0x5F, 0x38, 0x31, 0x00, 0x2C, 0x22, 0xD0,
-0xBC, 0x1B, 0xE5, 0x17, 0x64, 0x19, 0x6C, 0x40, 0x49, 0x4D, 0xE4, 0xB2,
-0xAD, 0x56, 0x65, 0x45, 0x0F, 0xD1, 0x11, 0x2C, 0x16, 0xD8, 0x02, 0x9C,
-0x00, 0x2C, 0x14, 0xD0, 0x28, 0x2F, 0x11, 0xDC, 0x28, 0x2E, 0x0F, 0xDC,
-0x06, 0x25, 0x4C, 0x5F, 0x09, 0x7A, 0x02, 0x34, 0x8C, 0x42, 0x0A, 0xDA,
-0x08, 0xE0, 0x85, 0x42, 0x07, 0xDB, 0x00, 0x2B, 0x05, 0xD1, 0x14, 0x23,
-0xA3, 0x42, 0x9B, 0x41, 0x5B, 0x42, 0x00, 0xE0, 0x01, 0x23, 0x00, 0x2A,
-0xC5, 0xD1, 0x2D, 0x4C, 0x0A, 0x21, 0x01, 0x39, 0xC9, 0xB2, 0x00, 0x2B,
-0x0D, 0xD0, 0x0A, 0x25, 0x4D, 0x43, 0x65, 0x19, 0x3E, 0x27, 0xEE, 0x5F,
-0x00, 0x20, 0x02, 0x96, 0x02, 0x9F, 0x14, 0x25, 0xF6, 0x0F, 0xBD, 0x42,
-0x46, 0x41, 0x75, 0x42, 0x2B, 0x40, 0x0A, 0x25, 0x4D, 0x43, 0x65, 0x19,
-0x3C, 0x20, 0x2D, 0x5E, 0x00, 0x2D, 0x01, 0xD0, 0x01, 0x32, 0xD2, 0xB2,
-0x00, 0x29, 0xE2, 0xD1, 0x26, 0x49, 0x28, 0x4C, 0x0B, 0x55, 0x00, 0x2A,
-0x7B, 0xD1, 0x27, 0x48, 0x0A, 0x23, 0x01, 0x3B, 0xDB, 0xB2, 0xC2, 0x54,
-0x00, 0x2B, 0xFA, 0xD1, 0x22, 0x4D, 0x4B, 0x55, 0x71, 0xE0, 0x18, 0x4B,
-0x9A, 0x69, 0x00, 0x2A, 0x10, 0xD0, 0x21, 0x4A, 0x12, 0x68, 0x00, 0x2A,
-0x0C, 0xDD, 0x12, 0x4A, 0x12, 0x68, 0x01, 0x2A, 0x08, 0xD1, 0x1E, 0x4A,
-0x12, 0x78, 0x00, 0x2A, 0x04, 0xD0, 0x1D, 0x4A, 0x12, 0x68, 0x00, 0x2A,
-0x00, 0xD1, 0x9A, 0x61, 0x9A, 0x69, 0x00, 0x2A, 0x04, 0xD1, 0xA0, 0x21,
-0x12, 0x48, 0xC9, 0x00, 0x42, 0x54, 0xDA, 0x60, 0x9A, 0x68, 0x01, 0x2A,
-0x51, 0xD1, 0x00, 0x22, 0x9A, 0x60, 0x5B, 0x68, 0x01, 0x2B, 0x2B, 0xD1,
-0x04, 0x4A, 0x13, 0x70, 0x12, 0x4A, 0x34, 0x32, 0x13, 0x70, 0x12, 0x4A,
-0x13, 0x70, 0x44, 0xE0, 0x9C, 0x0D, 0x00, 0x20, 0xDD, 0x01, 0x00, 0x20,
-0xF8, 0x08, 0x00, 0x20, 0x70, 0x01, 0x00, 0x20, 0x48, 0x0D, 0x00, 0x20,
-0x00, 0x40, 0x00, 0x40, 0x8F, 0x01, 0x00, 0x00, 0x5F, 0x09, 0x00, 0x00,
-0xF5, 0x00, 0x00, 0x20, 0xEC, 0x11, 0x00, 0x20, 0x4C, 0x11, 0x00, 0x20,
-0x04, 0x05, 0x00, 0x00, 0x3E, 0x11, 0x00, 0x20, 0x20, 0x01, 0x00, 0x20,
-0x48, 0x11, 0x00, 0x20, 0xBC, 0x11, 0x00, 0x20, 0xAE, 0x09, 0x00, 0x20,
-0xB3, 0x01, 0x00, 0x20, 0x00, 0x2B, 0x1E, 0xD1, 0x10, 0x4A, 0x13, 0x70,
-0x10, 0x4A, 0x34, 0x32, 0x13, 0x70, 0x10, 0x4B, 0x02, 0x22, 0x1A, 0x70,
-0x15, 0xE0, 0x0F, 0x4B, 0x04, 0x22, 0x9A, 0x70, 0x87, 0x22, 0x52, 0x00,
-0x9A, 0x80, 0x40, 0x22, 0x9A, 0x71, 0x06, 0x22, 0xDA, 0x71, 0x01, 0x22,
-0x1A, 0x72, 0x03, 0x22, 0x5A, 0x72, 0x00, 0x22, 0x1A, 0x70, 0x04, 0xE0,
-0x06, 0x48, 0x07, 0x49, 0x50, 0x22, 0xFE, 0xF7, 0x21, 0xFC, 0x0B, 0xB0,
-0xF0, 0xBD, 0xC0, 0x46, 0xDD, 0x01, 0x00, 0x20, 0xAE, 0x09, 0x00, 0x20,
-0xB3, 0x01, 0x00, 0x20, 0x48, 0x0D, 0x00, 0x20, 0x4A, 0x74, 0x00, 0x00,
-0x38, 0xB5, 0x50, 0x28, 0x05, 0xD1, 0x3B, 0x4B, 0x01, 0x20, 0x18, 0x60,
-0xFE, 0xF7, 0xE6, 0xFD, 0x6F, 0xE0, 0x39, 0x4B, 0x40, 0x28, 0x01, 0xD1,
-0x01, 0x24, 0x1C, 0x70, 0x1B, 0x78, 0x00, 0x2B, 0x67, 0xD0, 0x41, 0x38,
-0x0E, 0x28, 0x64, 0xD8, 0xFE, 0xF7, 0x3A, 0xFB, 0x08, 0x12, 0x08, 0x2D,
-0x08, 0x47, 0x63, 0x63, 0x63, 0x63, 0x63, 0x63, 0x63, 0x63, 0x5E, 0x00,
-0x2F, 0x4B, 0x01, 0x22, 0x1A, 0x70, 0x2F, 0x4B, 0x1A, 0x80, 0x2F, 0x4A,
-0x13, 0x60, 0xFC, 0xF7, 0x21, 0xFA, 0x50, 0xE0, 0x2A, 0x48, 0x2C, 0x4B,
-0xFF, 0x2A, 0x0B, 0xD1, 0x2B, 0x4A, 0xC9, 0x01, 0x12, 0x78, 0x52, 0x00,
-0xD2, 0xB2, 0x02, 0x70, 0x29, 0x4A, 0x89, 0x18, 0x19, 0x60, 0xFC, 0xF7,
-0x11, 0xFA, 0x40, 0xE0, 0x89, 0x01, 0x8A, 0x18, 0x25, 0x49, 0x52, 0x00,
-0x02, 0x24, 0x52, 0x18, 0x04, 0x70, 0x1A, 0x60, 0xFC, 0xF7, 0x06, 0xFA,
-0x35, 0xE0, 0x1D, 0x4C, 0x1E, 0x4B, 0x21, 0x48, 0xFF, 0x2A, 0x0A, 0xD1,
-0x1D, 0x4A, 0x89, 0x01, 0x12, 0x78, 0x40, 0x18, 0x52, 0x00, 0xD2, 0xB2,
-0x22, 0x70, 0x18, 0x60, 0xFC, 0xF7, 0xF6, 0xF9, 0x25, 0xE0, 0x49, 0x01,
-0x52, 0x18, 0x52, 0x00, 0x02, 0x25, 0x80, 0x18, 0x25, 0x70, 0x18, 0x60,
-0xFC, 0xF7, 0xEC, 0xF9, 0x1B, 0xE0, 0x10, 0x4C, 0x11, 0x4B, 0x15, 0x48,
-0xFF, 0x2A, 0x08, 0xD1, 0x10, 0x4A, 0x49, 0x01, 0x92, 0x78, 0x40, 0x18,
-0x22, 0x70, 0x18, 0x60, 0xFC, 0xF7, 0xDE, 0xF9, 0x0D, 0xE0, 0x49, 0x01,
-0x52, 0x18, 0x01, 0x25, 0x80, 0x18, 0x25, 0x70, 0x18, 0x60, 0xFC, 0xF7,
-0xD5, 0xF9, 0x04, 0xE0, 0x0B, 0x4A, 0x00, 0x23, 0x13, 0x70, 0x02, 0x4A,
-0x13, 0x70, 0x38, 0xBD, 0x50, 0x11, 0x00, 0x20, 0xE5, 0x01, 0x00, 0x20,
-0xF6, 0x03, 0x00, 0x20, 0x08, 0x03, 0x00, 0x20, 0x34, 0x0D, 0x00, 0x20,
-0x0A, 0x03, 0x00, 0x20, 0x84, 0x40, 0x00, 0x40, 0xF8, 0x03, 0x00, 0x20,
-0xB3, 0x0A, 0x00, 0x20, 0x1D, 0x03, 0x00, 0x20, 0x08, 0xB5, 0x35, 0x4B,
-0x1B, 0x88, 0x33, 0x2B, 0x29, 0xD0, 0x06, 0xD8, 0x0A, 0x2B, 0x2F, 0xD0,
-0x30, 0x2B, 0x11, 0xD0, 0x01, 0x2B, 0x5D, 0xD1, 0x06, 0xE0, 0xA0, 0x2B,
-0x32, 0xD0, 0xB0, 0x2B, 0x4C, 0xD0, 0x5F, 0x2B, 0x56, 0xD1, 0x3F, 0xE0,
-0x2C, 0x4A, 0x11, 0x78, 0x0E, 0x22, 0x11, 0x42, 0x50, 0xD1, 0x2B, 0x4A,
-0x13, 0x70, 0x4D, 0xE0, 0x28, 0x4B, 0x2A, 0x4A, 0x1B, 0x78, 0x12, 0x78,
-0x01, 0x2B, 0x05, 0xD1, 0x00, 0x2A, 0x45, 0xD1, 0x27, 0x4A, 0x53, 0x60,
-0x93, 0x60, 0x41, 0xE0, 0x01, 0x2A, 0x3F, 0xD1, 0x24, 0x4B, 0x00, 0x21,
-0x59, 0x60, 0x9A, 0x60, 0x3A, 0xE0, 0x1F, 0x4B, 0x22, 0x4A, 0x19, 0x78,
-0x22, 0x4B, 0x01, 0x29, 0x00, 0xD0, 0x00, 0x21, 0xD1, 0x54, 0x31, 0xE0,
-0x20, 0x4B, 0x1A, 0x78, 0x00, 0x2A, 0x02, 0xD1, 0x01, 0x22, 0x1A, 0x70,
-0x2A, 0xE0, 0x00, 0x22, 0x1A, 0x70, 0x27, 0xE0, 0x15, 0x4B, 0x1C, 0x4A,
-0x18, 0x78, 0x1C, 0x4B, 0x1A, 0x28, 0x06, 0xD1, 0x19, 0x78, 0x1B, 0x4B,
-0x10, 0x78, 0x1A, 0x78, 0xFF, 0xF7, 0xDA, 0xF9, 0x1A, 0xE0, 0x11, 0x78,
-0x1A, 0x78, 0xFF, 0xF7, 0x1F, 0xFF, 0x15, 0xE0, 0x0C, 0x4B, 0x1B, 0x78,
-0x00, 0x2B, 0x11, 0xD0, 0x14, 0x4B, 0x08, 0x22, 0x1A, 0x60, 0xFA, 0xF7,
-0xD7, 0xFB, 0x0B, 0xE0, 0x07, 0x4B, 0x1B, 0x78, 0x1A, 0x2B, 0x07, 0xD1,
-0x0C, 0x4B, 0x18, 0x78, 0x0C, 0x4B, 0x19, 0x78, 0x0C, 0x4B, 0x1A, 0x78,
-0xFF, 0xF7, 0xBE, 0xF9, 0x08, 0xBD, 0xC0, 0x46, 0x28, 0x00, 0x00, 0x20,
-0x0C, 0x00, 0x00, 0x50, 0xE8, 0x01, 0x00, 0x20, 0xDD, 0x01, 0x00, 0x20,
-0xF8, 0x08, 0x00, 0x20, 0xEC, 0x11, 0x00, 0x20, 0x0C, 0x05, 0x00, 0x00,
-0xDF, 0x01, 0x00, 0x20, 0x0E, 0x00, 0x00, 0x50, 0x0D, 0x00, 0x00, 0x50,
-0x10, 0x00, 0x00, 0x50, 0x50, 0x11, 0x00, 0x20, 0x00, 0x01, 0x02, 0x03,
-0x04, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x0B, 0x0C, 0x0D,
-0x0E, 0x0F, 0x10, 0x11, 0x11, 0x12, 0x13, 0x14, 0x15, 0x15, 0x16, 0x17,
-0x18, 0x18, 0x19, 0x1A, 0x1B, 0x1B, 0x1C, 0x1D, 0x1D, 0x1E, 0x1F, 0x1F,
-0x20, 0x21, 0x21, 0x22, 0x23, 0x23, 0x24, 0x24, 0x25, 0x25, 0x26, 0x27,
-0x27, 0x28, 0x28, 0x29, 0x29, 0x2A, 0x2A, 0x2B, 0x2B, 0x2C, 0x2C, 0x2D,
-0x00, 0x00, 0x78, 0x04, 0xEF, 0x08, 0x66, 0x0D, 0xDB, 0x11, 0x50, 0x16,
-0xC2, 0x1A, 0x33, 0x1F, 0xA1, 0x23, 0x0C, 0x28, 0x74, 0x2C, 0xD9, 0x30,
-0x39, 0x35, 0x96, 0x39, 0xEE, 0x3D, 0x42, 0x42, 0x90, 0x46, 0xD9, 0x4A,
-0x1B, 0x4F, 0x58, 0x53, 0x8E, 0x57, 0xBE, 0x5B, 0xE6, 0x5F, 0x07, 0x64,
-0x1F, 0x68, 0x30, 0x6C, 0x39, 0x70, 0x38, 0x74, 0x2F, 0x78, 0x1C, 0x7C,
-0xFF, 0x7F, 0xD9, 0x83, 0xA8, 0x87, 0x6D, 0x8B, 0x27, 0x8F, 0xD5, 0x92,
-0x79, 0x96, 0x10, 0x9A, 0x9B, 0x9D, 0x1B, 0xA1, 0x8D, 0xA4, 0xF3, 0xA7,
-0x4B, 0xAB, 0x97, 0xAE, 0xD4, 0xB1, 0x04, 0xB5, 0x26, 0xB8, 0x39, 0xBB,
-0x3E, 0xBE, 0x34, 0xC1, 0x1B, 0xC4, 0xF2, 0xC6, 0xBA, 0xC9, 0x73, 0xCC,
-0x1B, 0xCF, 0xB3, 0xD1, 0x3B, 0xD4, 0xB2, 0xD6, 0x19, 0xD9, 0x6E, 0xDB,
-0xB3, 0xDD, 0xE6, 0xDF, 0x08, 0xE2, 0x18, 0xE4, 0x16, 0xE6, 0x03, 0xE8,
-0xDD, 0xE9, 0xA5, 0xEB, 0x5B, 0xED, 0xFE, 0xEE, 0x8F, 0xF0, 0x0D, 0xF2,
-0x77, 0xF3, 0xCF, 0xF4, 0x14, 0xF6, 0x46, 0xF7, 0x64, 0xF8, 0x6F, 0xF9,
-0x67, 0xFA, 0x4B, 0xFB, 0x1B, 0xFC, 0xD8, 0xFC, 0x81, 0xFD, 0x17, 0xFE,
-0x98, 0xFE, 0x06, 0xFF, 0x5F, 0xFF, 0xA5, 0xFF, 0xD7, 0xFF, 0xF5, 0xFF,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x45, 0x20, 0x4D, 0x31, 0x48, 0x30,
-0x50, 0x42, 0x34, 0x35, 0x25, 0x44, 0x01, 0x34, 0x38, 0x30, 0x47, 0x59,
-0x30, 0x31, 0x00, 0x00, 0x00, 0x48, 0x10, 0x5A, 0x28, 0x1E, 0x01, 0x01,
-0x00, 0x00, 0x00, 0x1A, 0x0E, 0x00, 0x00, 0x1A, 0x0E, 0x00, 0x00, 0x00,
-0x01, 0x01, 0x00, 0x0A, 0x00, 0x00, 0x00, 0x05, 0xD0, 0x02, 0x00, 0x00,
-0x00, 0x01, 0x01, 0x50, 0x50, 0x50, 0x01, 0x01, 0x00, 0x00, 0x62, 0x00,
-0x4B, 0x00, 0x23, 0x00, 0x04, 0x03, 0x32, 0x32, 0x10, 0x00, 0x01, 0x01,
-0x04, 0x00, 0x08, 0x02, 0x18, 0x03, 0x03, 0x03, 0x00, 0x00, 0x00, 0x04,
-0x05, 0x0F, 0x00, 0x07, 0x05, 0x00, 0xC0, 0xF9, 0x14, 0x1E, 0x0A, 0xF6,
-0x0F, 0x00, 0x05, 0x14, 0x1E, 0x00, 0xA2, 0x29, 0xDE, 0x01, 0x00, 0x00,
-0x28, 0x00, 0x23, 0x00, 0x0F, 0x0A, 0x3C, 0x01, 0x2D, 0x00, 0x00, 0x00,
-0x02, 0x01, 0x01, 0x14, 0x32, 0x00, 0x32, 0x00, 0xFF, 0x7F, 0x00, 0x01,
-0x01, 0x07, 0x0B, 0x00, 0x32, 0x00, 0x0A, 0x05, 0xD0, 0x03, 0xB3, 0x00,
-0xFF, 0x7F, 0x00, 0x80, 0x01, 0x00, 0x01, 0x01, 0x04, 0x00, 0x08, 0x02,
-0x30, 0x04, 0x03, 0x03, 0x00, 0x00, 0x00, 0x04, 0x05, 0x0F, 0x00, 0x08,
-0x06, 0x00, 0xC0, 0xF9, 0x14, 0x1E, 0x0A, 0xF6, 0x19, 0x00, 0x08, 0x23,
-0x1E, 0x00, 0xA2, 0x29, 0xDE, 0x01, 0x00, 0x00, 0x2D, 0x00, 0x28, 0x00,
-0x0F, 0x0A, 0x3C, 0x01, 0x2D, 0x00, 0x1E, 0x00, 0x02, 0x01, 0x01, 0x14,
-0x96, 0x00, 0x32, 0x00, 0xFF, 0x7F, 0x01, 0x01, 0x01, 0x07, 0x0A, 0x00,
-0x32, 0x00, 0x0A, 0x05, 0xD0, 0x03, 0xB3, 0x00, 0xFF, 0x7F, 0x00, 0x80,
-0x19, 0x00, 0x1F, 0x1E, 0x1D, 0x1C, 0x1B, 0x1A, 0x19, 0x15, 0x14, 0x13,
-0x12, 0x11, 0x10, 0x0F, 0x0E, 0x0D, 0x0C, 0x0B, 0x0A, 0x06, 0x05, 0x04,
-0x03, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x11, 0x10, 0x0F, 0x0E, 0x0D, 0x0C, 0x0B, 0x08,
-0x07, 0x06, 0x05, 0x04, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
-0x01, 0x01, 0x01, 0x01, 0x02, 0x02, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x01, 0x01, 0x01, 0x01, 0x01, 0x02, 0x02, 0x02, 0x02, 0x03, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x02, 0x02, 0x02, 0x02, 0x03,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x01, 0x01, 0x01, 0x02, 0x02, 0x02,
-0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x02, 0x02,
-0x02, 0x03, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x02, 0x02,
-0x02, 0x02, 0x02, 0x02, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
-0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01,
-0x01, 0x02, 0x02, 0x02, 0x03, 0x03, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01,
-0x00, 0x01, 0x00, 0x01, 0x01, 0x01, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01,
-0x01, 0x02, 0x02, 0x02, 0x02, 0x02, 0x03, 0x03, 0x03, 0x04, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01,
-0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x01, 0x01, 0x01, 0x01,
-0x01, 0x01, 0x01, 0x02, 0x02, 0x02, 0x02, 0x02, 0x03, 0x03, 0x03, 0x04,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
-0x01, 0x01, 0x01, 0x02, 0x02, 0x02, 0x02, 0x02, 0x03, 0x03, 0x03, 0x04,
-0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
-0x01, 0x01, 0x01, 0x01, 0x01, 0x02, 0x02, 0x02, 0x02, 0x02, 0x03, 0x03,
-0x03, 0x03, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
-0x01, 0x01, 0x01, 0x01, 0x01, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x03,
-0x03, 0x03, 0x03, 0x04, 0x04, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x02, 0x01, 0x01, 0x01,
-0x01, 0x01, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x02, 0x02, 0x02, 0x02,
-0x02, 0x03, 0x03, 0x03, 0x04, 0x04, 0x04, 0x05, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x01, 0x02,
-0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x02, 0x02, 0x02,
-0x02, 0x02, 0x02, 0x03, 0x03, 0x03, 0x04, 0x04, 0x04, 0x05, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x59, 0x4E,
-0x4E, 0x4E, 0x4D, 0x4D, 0x4B, 0x4B, 0x4B, 0x4B, 0x4B, 0x4A, 0x4B, 0x4B,
-0x4A, 0x47, 0x4A, 0x48, 0x47, 0x47, 0x47, 0x47, 0x45, 0x45, 0x48, 0x4B,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x47, 0x48, 0x45, 0x47, 0x45,
-0x45, 0x45, 0x45, 0x45, 0x43, 0x43, 0x45, 0x46, 0x46, 0x43, 0x41, 0x42,
-0x42, 0x41, 0x41, 0x41, 0x3E, 0x40, 0x42, 0x48, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x52, 0x48, 0x47, 0x48, 0x48, 0x47, 0x46, 0x48, 0x47, 0x46,
-0x48, 0x45, 0x45, 0x43, 0x42, 0x43, 0x42, 0x41, 0x42, 0x45, 0x43, 0x42,
-0x42, 0x43, 0x41, 0x47, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x4A,
-0x4A, 0x48, 0x47, 0x47, 0x47, 0x48, 0x48, 0x48, 0x48, 0x48, 0x45, 0x43,
-0x43, 0x43, 0x42, 0x42, 0x42, 0x42, 0x42, 0x43, 0x43, 0x45, 0x41, 0x4A,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x53, 0x4D, 0x4B, 0x4A, 0x4B, 0x4A,
-0x48, 0x47, 0x48, 0x48, 0x46, 0x47, 0x48, 0x4A, 0x47, 0x42, 0x45, 0x46,
-0x42, 0x46, 0x45, 0x43, 0x45, 0x45, 0x46, 0x4B, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x55, 0x4E, 0x4B, 0x4B, 0x4B, 0x4A, 0x48, 0x4A, 0x47, 0x47,
-0x48, 0x48, 0x48, 0x46, 0x43, 0x45, 0x46, 0x43, 0x45, 0x46, 0x42, 0x43,
-0x45, 0x46, 0x46, 0x4E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x52, 0x4E,
-0x4D, 0x4B, 0x48, 0x4A, 0x4A, 0x4A, 0x48, 0x4A, 0x4A, 0x4A, 0x4A, 0x45,
-0x46, 0x45, 0x46, 0x46, 0x45, 0x46, 0x43, 0x46, 0x45, 0x46, 0x46, 0x4D,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x52, 0x50, 0x4D, 0x4D, 0x47, 0x48,
-0x47, 0x47, 0x48, 0x48, 0x48, 0x48, 0x48, 0x46, 0x45, 0x46, 0x46, 0x45,
-0x43, 0x45, 0x45, 0x43, 0x46, 0x46, 0x46, 0x4B, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x52, 0x4D, 0x4A, 0x4A, 0x48, 0x4A, 0x47, 0x46, 0x48, 0x48,
-0x48, 0x47, 0x45, 0x45, 0x46, 0x45, 0x46, 0x45, 0x41, 0x43, 0x43, 0x45,
-0x41, 0x46, 0x47, 0x4B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x52, 0x4D,
-0x4B, 0x4A, 0x47, 0x48, 0x46, 0x46, 0x46, 0x46, 0x46, 0x45, 0x45, 0x45,
-0x46, 0x46, 0x42, 0x42, 0x42, 0x42, 0x42, 0x41, 0x43, 0x45, 0x45, 0x4B,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x4B, 0x4A, 0x48, 0x48, 0x46,
-0x45, 0x45, 0x46, 0x47, 0x46, 0x45, 0x43, 0x42, 0x42, 0x41, 0x41, 0x40,
-0x41, 0x41, 0x40, 0x42, 0x41, 0x42, 0x43, 0x48, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x50, 0x4B, 0x48, 0x48, 0x47, 0x47, 0x45, 0x46, 0x43, 0x45,
-0x45, 0x43, 0x41, 0x3F, 0x3F, 0x41, 0x40, 0x40, 0x40, 0x42, 0x3F, 0x42,
-0x42, 0x40, 0x42, 0x47, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4E, 0x4B,
-0x4A, 0x47, 0x45, 0x45, 0x43, 0x46, 0x45, 0x45, 0x45, 0x42, 0x42, 0x41,
-0x3E, 0x42, 0x41, 0x41, 0x41, 0x40, 0x3E, 0x40, 0x41, 0x40, 0x40, 0x43,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x4B, 0x4D, 0x4D, 0x4B, 0x4A,
-0x4A, 0x4A, 0x4A, 0x4A, 0x4A, 0x48, 0x48, 0x47, 0x45, 0x45, 0x46, 0x45,
-0x45, 0x46, 0x43, 0x46, 0x46, 0x46, 0x46, 0x4A, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x45, 0x20,
+0x00,0x20,0x00,0x20,0x79,0x02,0x00,0x00,0x39,0x02,0x00,0x00,0x3D,0x02,0x00,0x00,
+0x41,0x02,0x00,0x00,0x45,0x02,0x00,0x00,0x49,0x02,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x4D,0x02,0x00,0x00,
+0x51,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x55,0x02,0x00,0x00,0x59,0x02,0x00,0x00,
+0x39,0x01,0x00,0x00,0x61,0x01,0x00,0x00,0x25,0x01,0x00,0x00,0x21,0x02,0x00,0x00,
+0x35,0x02,0x00,0x00,0x71,0x02,0x00,0x00,0x75,0x02,0x00,0x00,0x75,0x02,0x00,0x00,
+0x75,0x02,0x00,0x00,0x75,0x02,0x00,0x00,0x75,0x02,0x00,0x00,0x75,0x02,0x00,0x00,
+0x75,0x02,0x00,0x00,0x75,0x02,0x00,0x00,0x75,0x02,0x00,0x00,0x75,0x02,0x00,0x00,
+0x75,0x02,0x00,0x00,0x75,0x02,0x00,0x00,0x75,0x02,0x00,0x00,0x75,0x02,0x00,0x00,
+0x75,0x02,0x00,0x00,0x75,0x02,0x00,0x00,0x75,0x02,0x00,0x00,0x75,0x02,0x00,0x00,
+0x75,0x02,0x00,0x00,0x75,0x02,0x00,0x00,0x75,0x02,0x00,0x00,0x75,0x02,0x00,0x00,
+0x75,0x02,0x00,0x00,0x75,0x02,0x00,0x00,0x75,0x02,0x00,0x00,0x75,0x02,0x00,0x00,
+0x30,0xB5,0x11,0x4B,0x11,0x4A,0x1B,0x88,0x12,0x78,0xD3,0x18,0xDB,0xB2,0xE1,0x2B,
+0x02,0xD0,0xE5,0x2B,0x17,0xD1,0x09,0xE0,0x0D,0x49,0x0E,0x4A,0x04,0x23,0x01,0x3B,
+0xDB,0xB2,0xC8,0x5C,0x98,0x54,0x00,0x2B,0xF9,0xD1,0x0C,0xE0,0x0A,0x4C,0x09,0x48,
+0x0A,0x49,0x0B,0x4A,0x04,0x23,0x01,0x3B,0xDB,0xB2,0xE5,0x5C,0x1D,0x54,0xCD,0x5C,
+0x9D,0x54,0x00,0x2B,0xF7,0xD1,0x30,0xBD,0x28,0x00,0x00,0x20,0x2A,0x00,0x00,0x20,
+0x2D,0x00,0x00,0x20,0x0C,0x00,0x00,0x50,0x35,0x00,0x00,0x20,0x31,0x00,0x00,0x20,
+0x10,0x00,0x00,0x50,0x03,0x4A,0x00,0x23,0x13,0x70,0x80,0x22,0xD2,0x05,0x13,0x70,
+0x70,0x47,0xC0,0x46,0x00,0x00,0x00,0x20,0x06,0x4B,0x00,0x22,0x5A,0x70,0x80,0x23,
+0xDB,0x05,0x59,0x69,0x04,0x4A,0x0A,0x40,0x5A,0x61,0x59,0x69,0x03,0x4A,0x0A,0x40,
+0x5A,0x61,0x70,0x47,0x00,0x00,0x00,0x20,0xFF,0xFF,0xFF,0xFE,0xFF,0xFF,0xFF,0xEF,
+0x70,0xB5,0xA0,0x23,0xDB,0x05,0x1C,0x7A,0x24,0x4D,0x0F,0x22,0x14,0x40,0x2A,0x78,
+0x23,0x4E,0x00,0x2A,0x06,0xD0,0x23,0x4B,0x1B,0x68,0x98,0x47,0x00,0x23,0x2B,0x70,
+0x34,0x70,0x3A,0xE0,0x9B,0x7A,0x32,0x78,0xE1,0x07,0x02,0xD5,0x1E,0x4A,0x13,0x80,
+0x07,0xE0,0x08,0x21,0x0C,0x42,0x0A,0xD0,0x1C,0x4B,0x1A,0x78,0x52,0x18,0xD2,0xB2,
+0x1A,0x70,0xFF,0xF7,0x8D,0xFF,0x1A,0x4B,0x1B,0x68,0x98,0x47,0x19,0xE0,0xA1,0x07,
+0x0D,0xD5,0x08,0x2A,0x01,0xD0,0x01,0x2A,0x01,0xD1,0x16,0x4B,0x02,0xE0,0x12,0x4A,
+0x13,0x80,0x15,0x4B,0x1B,0x68,0x98,0x47,0x00,0x22,0x10,0x4B,0x08,0xE0,0x63,0x07,
+0x07,0xD5,0x11,0x4B,0x1B,0x68,0x98,0x47,0x0C,0x4B,0x1A,0x78,0x08,0x32,0xD2,0xB2,
+0x1A,0x70,0x07,0x4B,0x01,0x22,0x1C,0x70,0xA0,0x23,0xDB,0x05,0x1A,0x72,0x0B,0x49,
+0x10,0x22,0x1A,0x72,0x00,0x22,0x0A,0x70,0x1A,0x72,0x70,0xBD,0x2C,0x00,0x00,0x20,
+0x2B,0x00,0x00,0x20,0x24,0x00,0x00,0x20,0x28,0x00,0x00,0x20,0x2A,0x00,0x00,0x20,
+0x1C,0x00,0x00,0x20,0x20,0x00,0x00,0x20,0x18,0x00,0x00,0x20,0x0C,0x00,0x00,0x20,
+0x03,0x4A,0x00,0x23,0x93,0x70,0x80,0x22,0xD2,0x05,0x53,0x70,0x70,0x47,0xC0,0x46,
+0x00,0x00,0x00,0x20,0x70,0x47,0xC0,0x46,0x00,0xB5,0xFE,0xE7,0x00,0xB5,0xFE,0xE7,
+0x00,0xB5,0xFE,0xE7,0x00,0xB5,0xFE,0xE7,0x00,0xB5,0xFE,0xE7,0x00,0xB5,0xFE,0xE7,
+0x00,0xB5,0xFE,0xE7,0x00,0xB5,0xFE,0xE7,0x00,0xB5,0xFE,0xE7,0x00,0xB5,0xFE,0xE7,
+0x00,0xB5,0xFE,0xE7,0x00,0xB5,0xFE,0xE7,0x00,0xB5,0xFE,0xE7,0x00,0xB5,0xFE,0xE7,
+0x00,0xB5,0xFE,0xE7,0x00,0xB5,0xFE,0xE7,0x38,0xB5,0x80,0x23,0xDB,0x05,0xFB,0x21,
+0x5A,0x68,0x59,0x60,0x99,0x68,0x08,0x21,0x99,0x60,0x00,0x22,0xD9,0x68,0xDA,0x60,
+0x19,0x6C,0x80,0x21,0xC9,0x01,0x19,0x64,0x19,0x69,0x44,0x49,0x19,0x61,0x44,0x4B,
+0x44,0x49,0x00,0xE0,0x04,0xC3,0x8B,0x42,0xFC,0xD3,0x43,0x4B,0x43,0x4A,0x9B,0x0A,
+0xDB,0xB2,0x13,0x70,0x42,0x4B,0x43,0x49,0x1B,0x68,0x9B,0x0A,0xDB,0xB2,0x53,0x70,
+0x41,0x4B,0x1B,0x68,0x9B,0x0A,0xDB,0xB2,0x93,0x70,0x40,0x4B,0x1B,0x68,0x9B,0x0A,
+0xDB,0xB2,0xD3,0x70,0x00,0x23,0x0B,0x70,0x03,0x23,0x08,0xE0,0x58,0x1C,0x15,0x5C,
+0xD4,0x5C,0xA5,0x42,0x07,0xD9,0xD4,0x5C,0x01,0x34,0xE4,0xB2,0x0C,0x54,0x01,0x3B,
+0xDB,0xB2,0xFF,0x2B,0xF2,0xD1,0x30,0x4A,0x11,0x78,0x35,0x4A,0x11,0x70,0x11,0x1C,
+0xFF,0x2B,0x03,0xD1,0x2D,0x4B,0xDB,0x78,0x1E,0x2B,0x04,0xD9,0xFF,0x23,0x4B,0x70,
+0x8B,0x70,0xCB,0x70,0x0B,0xE0,0x2A,0x4B,0x1B,0x68,0x1B,0x78,0x53,0x70,0x2A,0x4B,
+0x1B,0x68,0x1B,0x78,0x93,0x70,0x29,0x4B,0x1B,0x68,0x1B,0x78,0xD3,0x70,0x28,0x4B,
+0xDA,0x78,0xFF,0x2A,0x08,0xD0,0x9A,0x78,0xFF,0x2A,0x05,0xD0,0x5B,0x78,0xFF,0x2B,
+0x02,0xD0,0x00,0xF0,0x67,0xF8,0x38,0xBD,0x22,0x4B,0x23,0x4A,0xC0,0x21,0x13,0x60,
+0x22,0x4A,0x49,0x00,0x13,0x60,0x22,0x4A,0x22,0x48,0x13,0x60,0x22,0x4A,0x13,0x60,
+0x22,0x4B,0x02,0x22,0x5A,0x50,0xC0,0x21,0x91,0x40,0x5C,0x58,0x20,0x40,0x58,0x50,
+0x1F,0x49,0x04,0x24,0x08,0x69,0x20,0x43,0x08,0x61,0x62,0xB6,0x1A,0x60,0x80,0x23,
+0xDB,0x05,0x1A,0x6C,0x80,0x22,0x12,0x02,0x1A,0x64,0x1A,0x6C,0x80,0x22,0xD2,0x01,
+0x1A,0x64,0x9A,0x68,0x80,0x22,0x52,0x00,0x9A,0x60,0xA0,0x22,0xD2,0x05,0x91,0x68,
+0x14,0x49,0x91,0x60,0x1A,0x6C,0x00,0x22,0x1A,0x64,0xFE,0xE7,0x10,0x4F,0x00,0x00,
+0x00,0x00,0x00,0x20,0x3C,0x00,0x00,0x20,0xFF,0x03,0x00,0x00,0x31,0x00,0x00,0x20,
+0x08,0x04,0x00,0x00,0x35,0x00,0x00,0x20,0x0C,0x04,0x00,0x00,0x10,0x04,0x00,0x00,
+0x2D,0x00,0x00,0x20,0xF9,0x03,0x00,0x00,0x24,0x00,0x00,0x20,0x18,0x00,0x00,0x20,
+0x1C,0x00,0x00,0x20,0xFF,0x00,0xFF,0xFF,0x20,0x00,0x00,0x20,0x00,0xE1,0x00,0xE0,
+0x00,0xED,0x00,0xE0,0x00,0x00,0xC8,0x42,0x70,0x47,0xFF,0xFF,0xFF,0xFF,0xFF,0x02,
+0x4D,0x31,0x48,0x30,0x43,0x4F,0x34,0x35,0xFF,0x5B,0x00,0x00,0xFF,0x73,0x00,0x00,
+0xFF,0x7B,0x00,0x00,0xF7,0xB5,0x03,0xF0,0xC3,0xFC,0x05,0xF0,0x33,0xF8,0x00,0x20,
+0x05,0xF0,0xF2,0xFB,0x4E,0x4B,0x33,0x33,0x1B,0x78,0x5E,0x42,0x73,0x41,0x10,0x26,
+0xF6,0x1A,0x4C,0x4B,0x1E,0x70,0x4C,0x4B,0x1A,0x68,0x01,0x3A,0x53,0x42,0x5A,0x41,
+0x4A,0x4B,0x1A,0x70,0x4A,0x4B,0x1C,0x78,0x00,0x2C,0x22,0xD1,0x49,0x4A,0x01,0x25,
+0x14,0x70,0x1D,0x70,0x00,0xF0,0x52,0xFA,0x47,0x4B,0x28,0x1C,0xDA,0x78,0x9A,0x70,
+0x5C,0x70,0x05,0xF0,0xD1,0xFB,0x03,0xF0,0x7F,0xFB,0x01,0xF0,0x17,0xFB,0x80,0x23,
+0xDB,0x05,0x1A,0x6C,0x7F,0x21,0x8A,0x43,0x1A,0x64,0x00,0xF0,0xF5,0xFD,0x02,0xF0,
+0x4B,0xFF,0x01,0xF0,0x0B,0xFB,0x01,0xF0,0xA3,0xFA,0x3C,0x4B,0x02,0x20,0x1B,0x68,
+0x98,0x47,0x3B,0x4C,0x23,0x78,0x00,0x2B,0x03,0xD1,0x3A,0x4B,0x1B,0x78,0x00,0x2B,
+0x0F,0xD0,0x23,0x78,0x00,0xF0,0x94,0xFC,0x22,0x78,0x2E,0x4B,0x00,0x2A,0x01,0xD0,
+0x1E,0x70,0x01,0xE0,0x0D,0x22,0x1A,0x70,0x31,0x4A,0x00,0x23,0x13,0x70,0x31,0x4A,
+0x13,0x70,0x2C,0x4B,0x1B,0x78,0x00,0x2B,0x2C,0xD0,0x2F,0x4D,0x2B,0x78,0x00,0x2B,
+0x28,0xD0,0x2A,0x4C,0x13,0x20,0x23,0x68,0x98,0x47,0x00,0xF0,0x0F,0xFA,0x03,0xF0,
+0x08,0xFB,0x03,0xF0,0x8B,0xFA,0x29,0x4B,0x18,0x78,0x01,0xF0,0xA1,0xF8,0x00,0xF0,
+0xC7,0xFD,0x27,0x4A,0x01,0x23,0x13,0x70,0x26,0x4A,0x13,0x80,0x02,0xF0,0xDE,0xFF,
+0x2B,0x78,0x00,0x2B,0xFC,0xD1,0x23,0x68,0x14,0x20,0x98,0x47,0x00,0xF0,0xF6,0xF9,
+0x03,0xF0,0xEF,0xFA,0x03,0xF0,0x72,0xFA,0x1C,0x4B,0x18,0x78,0x01,0xF0,0x88,0xF8,
+0x10,0x4B,0x1E,0x70,0x00,0xF0,0x7E,0xFF,0x0E,0x4C,0x27,0x78,0x78,0xB2,0x13,0x28,
+0x00,0xD9,0x8D,0xE1,0x05,0xF0,0xD4,0xF8,0x74,0x00,0x8C,0x01,0x78,0x01,0x8C,0x01,
+0x8C,0x01,0x8C,0x01,0x8C,0x01,0x8C,0x01,0x8C,0x01,0x8C,0x01,0x8C,0x01,0x8C,0x01,
+0x8C,0x01,0x68,0x00,0x8C,0x01,0x3A,0x00,0x30,0x00,0x5F,0x00,0x8C,0x01,0x89,0x01,
+0xAE,0x09,0x00,0x20,0x1D,0x03,0x00,0x20,0x50,0x11,0x00,0x20,0xEB,0x01,0x00,0x20,
+0xE9,0x01,0x00,0x20,0xEA,0x01,0x00,0x20,0xAA,0x0A,0x00,0x20,0xF8,0x01,0x00,0x20,
+0xE8,0x01,0x00,0x20,0xE7,0x01,0x00,0x20,0xE5,0x01,0x00,0x20,0x48,0x0D,0x00,0x20,
+0xF6,0x03,0x00,0x20,0x08,0x03,0x00,0x20,0xB1,0x4B,0x00,0x22,0x1A,0x70,0x00,0xF0,
+0x7D,0xFE,0xB0,0x4B,0x1B,0x78,0x00,0x2B,0x00,0xD0,0x55,0xE1,0xAE,0x4C,0x23,0x78,
+0x00,0x2B,0x03,0xD0,0x00,0x20,0xAD,0x49,0x03,0xF0,0xB8,0xFC,0x23,0x78,0x00,0x2B,
+0x06,0xD0,0x01,0x21,0x00,0x20,0xAA,0x4A,0x0B,0x1C,0x00,0x90,0x03,0xF0,0x56,0xFC,
+0xA8,0x4B,0x98,0x78,0x03,0xF0,0x78,0xFA,0xA7,0x4D,0xE8,0x7B,0x03,0xF0,0x52,0xF8,
+0xA6,0x4C,0x20,0x60,0x28,0x7C,0x03,0xF0,0x4D,0xF8,0x11,0x23,0x60,0x60,0xEB,0x56,
+0xEA,0x7B,0x53,0x43,0xA3,0x60,0x9A,0x4B,0x00,0x22,0x1A,0x70,0xA0,0x4B,0x1B,0x78,
+0xA0,0x4B,0x18,0x78,0x01,0xF0,0x14,0xF8,0x95,0x4B,0x9D,0x4D,0x00,0x24,0x1C,0x70,
+0x2B,0x78,0x00,0xF0,0x29,0xFD,0x03,0xF0,0x8B,0xFF,0x00,0xF0,0x25,0xFD,0x2C,0x70,
+0x8F,0x4B,0x01,0x24,0x1C,0x70,0x00,0xF0,0x9B,0xFC,0x97,0x4B,0x1B,0x68,0x9A,0x05,
+0x13,0xD5,0x96,0x4A,0x96,0x4B,0x04,0x20,0x1A,0x60,0x96,0x4B,0x19,0x68,0x01,0x43,
+0x19,0x60,0x19,0x68,0x02,0x20,0x81,0x43,0x19,0x60,0x19,0x68,0x0C,0x43,0x1C,0x60,
+0x91,0x4B,0x00,0x21,0x19,0x60,0x91,0x4B,0x1A,0x60,0x91,0x4C,0x03,0x20,0x23,0x68,
+0x98,0x47,0x03,0xF0,0x3F,0xF8,0x23,0x68,0x05,0x20,0x98,0x47,0x02,0xF0,0xE4,0xFF,
+0x8C,0x4C,0x8D,0x4D,0x01,0x20,0x40,0x42,0x21,0x1C,0x2A,0x1C,0x04,0xF0,0x4C,0xFC,
+0x79,0x4B,0x1B,0x78,0x00,0x2B,0x03,0xD0,0x0C,0x20,0x88,0x49,0x03,0xF0,0x4E,0xFC,
+0x87,0x4A,0x23,0x68,0x13,0x80,0x2B,0x68,0x53,0x80,0x73,0x4B,0x1B,0x78,0x00,0x2B,
+0x06,0xD0,0x01,0x23,0x02,0x21,0x00,0x93,0x0C,0x20,0x0B,0x1C,0x03,0xF0,0xE6,0xFB,
+0x7B,0x4C,0x06,0x20,0x23,0x68,0x98,0x47,0x03,0xF0,0xF4,0xFF,0x04,0xF0,0x64,0xF9,
+0x04,0xF0,0x98,0xFB,0x00,0xF0,0x62,0xF9,0x04,0xF0,0x06,0xFD,0x04,0xF0,0x7E,0xFE,
+0x78,0x4B,0x1B,0x78,0x00,0x2B,0x2A,0xD1,0x23,0x68,0x07,0x20,0x98,0x47,0x01,0xF0,
+0x51,0xFA,0x23,0x68,0x08,0x20,0x98,0x47,0x02,0xF0,0xB2,0xFF,0x02,0xF0,0xBA,0xFF,
+0x23,0x68,0x09,0x20,0x98,0x47,0x01,0xF0,0x69,0xFA,0x01,0xF0,0xD1,0xFB,0x23,0x68,
+0x0A,0x20,0x98,0x47,0x01,0xF0,0x6E,0xFC,0x02,0xF0,0x44,0xFB,0x23,0x68,0x0B,0x20,
+0x98,0x47,0x01,0xF0,0xB8,0xFE,0x01,0xF0,0xD7,0xFF,0x23,0x68,0x0E,0x20,0x98,0x47,
+0x02,0xF0,0x84,0xF8,0x02,0xF0,0xF2,0xF9,0x23,0x68,0x10,0x20,0x98,0x47,0x00,0xF0,
+0x81,0xF9,0x5B,0x4B,0x0F,0x20,0x1B,0x68,0x98,0x47,0x5E,0x4B,0x1B,0x78,0x00,0x2B,
+0x3C,0xD1,0x02,0xF0,0x4F,0xFA,0x5C,0x4B,0x1A,0x68,0x5C,0x4B,0x00,0x2A,0x04,0xD1,
+0x5B,0x49,0x09,0x68,0x00,0x29,0x00,0xDD,0x1A,0x70,0x47,0x4A,0x19,0x78,0x32,0x32,
+0x12,0x78,0x91,0x42,0x01,0xD3,0x00,0x22,0x1A,0x70,0x1B,0x78,0x00,0x2B,0x21,0xD1,
+0x53,0x4B,0x51,0x4C,0x1B,0x68,0x00,0x2B,0x09,0xDD,0x20,0x68,0x00,0x28,0x06,0xD1,
+0x39,0x4B,0x1B,0x78,0x00,0x2B,0x02,0xD0,0x4E,0x49,0x03,0xF0,0xCF,0xFB,0x4E,0x4B,
+0x1B,0x68,0x98,0x47,0x23,0x68,0x00,0x2B,0x0A,0xDD,0x49,0x4B,0x18,0x68,0x00,0x28,
+0x06,0xD1,0x31,0x4B,0x1B,0x78,0x00,0x2B,0x02,0xD0,0x48,0x49,0x03,0xF0,0xBE,0xFB,
+0x02,0xF0,0x72,0xFA,0x41,0x4B,0x1A,0x78,0x01,0x32,0x1A,0x70,0x32,0x4B,0x1B,0x68,
+0x9A,0x05,0x23,0xD5,0x34,0x4B,0x18,0x68,0x2A,0x4B,0x1A,0x79,0x19,0x78,0x2F,0x4B,
+0x18,0x1A,0x53,0x1C,0x98,0x40,0x04,0xF0,0x8D,0xFF,0x23,0x4C,0x2F,0x4D,0x23,0x78,
+0x28,0x60,0x00,0x2B,0x03,0xD0,0x00,0x20,0x39,0x49,0x03,0xF0,0x9F,0xFB,0x23,0x78,
+0x00,0x2B,0x06,0xD0,0x00,0x20,0x01,0x21,0x2A,0x1C,0x04,0x23,0x00,0x90,0x03,0xF0,
+0x3D,0xFB,0x24,0x4B,0x01,0x21,0x1A,0x68,0x8A,0x43,0x1A,0x60,0x80,0x23,0xDB,0x05,
+0x9A,0x6C,0x01,0x21,0x0A,0x43,0x9A,0x64,0x00,0xF0,0x1E,0xFC,0x2D,0x4B,0x00,0x20,
+0x18,0x56,0x00,0xF0,0x5D,0xFE,0x17,0xE0,0x0F,0x4B,0x1B,0x78,0x00,0x2B,0x03,0xD0,
+0x05,0x20,0x29,0x49,0x03,0xF0,0x7A,0xFB,0x01,0x20,0x00,0xF0,0xF9,0xFE,0x00,0x20,
+0x00,0xF0,0xF6,0xFE,0x13,0x23,0x23,0x70,0x06,0xE0,0x00,0xF0,0x0D,0xFC,0x03,0xE0,
+0x13,0x4B,0x11,0x20,0x1B,0x68,0x98,0x47,0x20,0x4B,0x1F,0x70,0xEB,0xE5,0xC0,0x46,
+0xEA,0x01,0x00,0x20,0xE0,0x01,0x00,0x20,0xEB,0x01,0x00,0x20,0x34,0x59,0x00,0x00,
+0xAC,0x0A,0x00,0x20,0xAA,0x0A,0x00,0x20,0xAE,0x09,0x00,0x20,0xFC,0x02,0x00,0x20,
+0x1D,0x03,0x00,0x20,0x48,0x0D,0x00,0x20,0x58,0x00,0x00,0x20,0xFF,0xFF,0xFF,0x00,
+0x14,0xE0,0x00,0xE0,0x10,0xE0,0x00,0xE0,0x18,0xE0,0x00,0xE0,0xFC,0x01,0x00,0x20,
+0xF8,0x01,0x00,0x20,0x34,0x11,0x00,0x20,0x38,0x11,0x00,0x20,0x38,0x59,0x00,0x00,
+0x54,0x11,0x00,0x20,0x48,0x11,0x00,0x20,0x20,0x01,0x00,0x20,0xCA,0x00,0x00,0x20,
+0x9C,0x0D,0x00,0x20,0x3E,0x59,0x00,0x00,0x00,0x02,0x00,0x20,0x47,0x59,0x00,0x00,
+0x51,0x59,0x00,0x00,0xB3,0x01,0x00,0x20,0x5E,0x59,0x00,0x00,0x56,0x00,0x00,0x20,
+0x08,0xB5,0x01,0xF0,0x99,0xFD,0x01,0xF0,0xB3,0xFD,0x03,0x4B,0x1B,0x68,0x98,0x47,
+0x02,0xF0,0xD2,0xF9,0x08,0xBD,0xC0,0x46,0x00,0x02,0x00,0x20,0x10,0xB5,0x04,0xF0,
+0xEF,0xFD,0x05,0x4C,0x00,0x20,0x23,0x68,0x98,0x47,0x04,0xF0,0x19,0xFE,0x23,0x68,
+0x01,0x20,0x98,0x47,0x10,0xBD,0xC0,0x46,0xF8,0x01,0x00,0x20,0x7F,0xB5,0x17,0x4D,
+0x17,0x4B,0x5B,0x1B,0x03,0x93,0x17,0x4B,0x1B,0x78,0x00,0x2B,0x06,0xD0,0x00,0x20,
+0x01,0x21,0x03,0xAA,0x04,0x23,0x00,0x90,0x03,0xF0,0xA0,0xFA,0x12,0x4E,0x18,0xE0,
+0x14,0x2C,0x00,0xDD,0x14,0x24,0xE1,0xB2,0x08,0x1C,0x03,0xE0,0x01,0x38,0xC0,0xB2,
+0x2B,0x5C,0x33,0x54,0x00,0x28,0xF9,0xD1,0x0A,0x4B,0x1B,0x78,0x00,0x2B,0x04,0xD0,
+0x09,0x4A,0x01,0x23,0x00,0x90,0x03,0xF0,0x89,0xFA,0x03,0x9B,0x2D,0x19,0x1B,0x1B,
+0x03,0x93,0x03,0x9C,0x00,0x2C,0xE3,0xD1,0x7F,0xBD,0xC0,0x46,0x0C,0x1E,0x00,0x20,
+0x00,0x20,0x00,0x20,0xEB,0x01,0x00,0x20,0x54,0x11,0x00,0x20,0x13,0xB5,0x1E,0x4B,
+0x1B,0x78,0x00,0x2B,0x37,0xD0,0x1D,0x4C,0x00,0x23,0x23,0x70,0x1C,0x4B,0x04,0x20,
+0x1B,0x68,0x98,0x47,0x1B,0x4B,0x1C,0x4A,0x59,0x68,0x1B,0x68,0x11,0x80,0x53,0x80,
+0x1A,0x4B,0x1B,0x78,0x00,0x2B,0x06,0xD0,0x01,0x23,0x02,0x21,0x00,0x93,0x18,0x20,
+0x0B,0x1C,0x03,0xF0,0x5B,0xFA,0x23,0x78,0x15,0x4C,0x00,0x2B,0x1A,0xD0,0x13,0x4B,
+0x1B,0x78,0x00,0x2B,0x03,0xD0,0x00,0x20,0x12,0x49,0x03,0xF0,0xA7,0xFA,0x12,0x4A,
+0x01,0x23,0x13,0x70,0x22,0x68,0x02,0x2A,0x04,0xDC,0xD2,0x18,0x22,0x60,0x0F,0x4A,
+0x13,0x70,0x08,0xE0,0xFF,0xF7,0x74,0xFF,0x0D,0x4B,0x0D,0x22,0x1A,0x70,0x00,0x23,
+0x23,0x60,0x00,0xE0,0x23,0x60,0x13,0xBD,0x1C,0x03,0x00,0x20,0x3D,0x11,0x00,0x20,
+0xF8,0x01,0x00,0x20,0x70,0x01,0x00,0x20,0x54,0x11,0x00,0x20,0xEB,0x01,0x00,0x20,
+0x84,0x01,0x00,0x20,0xD0,0x58,0x00,0x00,0x48,0x11,0x00,0x20,0x14,0x09,0x00,0x20,
+0x1D,0x03,0x00,0x20,0xF0,0xB5,0xBA,0x4B,0x85,0xB0,0x04,0x33,0xDB,0x7F,0x00,0x24,
+0xB8,0x49,0x0A,0x22,0x09,0xE0,0x01,0x3B,0xDB,0xB2,0x10,0x1C,0x58,0x43,0x08,0x18,
+0x3C,0x25,0x40,0x5F,0x00,0x28,0x00,0xD0,0x01,0x24,0x00,0x2B,0xF3,0xD1,0xB2,0x4B,
+0xB2,0x4A,0x1B,0x78,0x07,0xE0,0x01,0x3B,0xDB,0xB2,0x19,0x1D,0x49,0x00,0x89,0x5E,
+0x00,0x29,0x00,0xD0,0x01,0x24,0x00,0x2B,0xF5,0xD1,0xAD,0x4A,0x00,0x2C,0x04,0xD1,
+0x13,0x68,0xAC,0x49,0x8B,0x42,0x01,0xD0,0x01,0x33,0x13,0x60,0xAA,0x4B,0x00,0x22,
+0x1A,0x70,0xA4,0x4B,0x1A,0x68,0xA2,0x4B,0x00,0x2A,0x7C,0xD1,0xA3,0x4A,0x12,0x68,
+0x00,0x2A,0x78,0xD1,0x1A,0x1C,0x34,0x32,0x10,0x78,0x00,0x28,0x41,0xD1,0xA3,0x4A,
+0x12,0x78,0x01,0x2A,0x17,0xD1,0xA2,0x4B,0x18,0x70,0xA2,0x4B,0x1A,0x70,0xA2,0x4B,
+0x18,0x70,0xA2,0x4B,0x1B,0x78,0x00,0x2B,0x02,0xD0,0xA1,0x49,0x03,0xF0,0x2E,0xFA,
+0x99,0x4B,0x01,0x22,0x1A,0x70,0x01,0xF0,0x9F,0xFC,0x01,0xF0,0xB9,0xFC,0x97,0x4B,
+0x00,0x22,0x1A,0x70,0x67,0xE1,0x9B,0x4A,0x3C,0x33,0x1B,0x78,0x12,0x68,0x9A,0x42,
+0x1F,0xDB,0x96,0x4B,0x1B,0x78,0x00,0x2B,0x02,0xD0,0x97,0x49,0x03,0xF0,0x16,0xFA,
+0x96,0x4B,0x87,0x49,0x1A,0x68,0x3D,0x31,0x01,0x32,0x1A,0x60,0x09,0x78,0x8A,0x42,
+0x0F,0xDB,0x00,0x20,0x18,0x60,0x8A,0x4B,0x18,0x70,0x8A,0x4B,0x18,0x70,0x8B,0x4B,
+0x1B,0x78,0x83,0x42,0x02,0xD0,0x8E,0x49,0x03,0xF0,0x00,0xFA,0x82,0x4B,0x02,0x22,
+0x1A,0x70,0x85,0x4B,0x8B,0x4A,0x00,0x21,0x19,0x70,0x10,0x68,0x85,0x4B,0x19,0x60,
+0x13,0x1C,0x88,0x42,0x0E,0xDD,0x01,0x38,0x10,0x60,0x8C,0x42,0x00,0xD0,0x11,0x60,
+0x1A,0x68,0x01,0x2A,0x00,0xD0,0x18,0xE1,0x00,0x22,0x1A,0x60,0x76,0x4B,0x03,0x22,
+0x1A,0x70,0x28,0xE1,0x80,0x4B,0x81,0x49,0x04,0x33,0xDB,0x8F,0x8B,0x42,0x00,0xD1,
+0x0B,0xE1,0x7F,0x49,0x09,0x68,0x99,0x42,0x00,0xDA,0x06,0xE1,0x68,0x4B,0x6C,0x48,
+0x19,0x1C,0x3E,0x31,0x09,0x78,0x00,0x68,0x88,0x42,0x00,0xDA,0xFD,0xE0,0x3F,0x33,
+0x1B,0x78,0x13,0x60,0xF9,0xE0,0x04,0x33,0xD8,0x7F,0x00,0x23,0x1A,0x1C,0x75,0x49,
+0x31,0xE0,0x01,0x38,0xC0,0xB2,0x0A,0x24,0x44,0x43,0x5E,0x4F,0x3D,0x19,0x3C,0x26,
+0xAD,0x5F,0x00,0x2D,0x27,0xDD,0x0C,0x19,0x3C,0x27,0xE4,0x5F,0x00,0x2C,0x22,0xDD,
+0x44,0x00,0x0D,0x19,0xAF,0x88,0x57,0x4D,0x3E,0xB2,0x2C,0x19,0xA4,0x88,0x25,0xB2,
+0x76,0x1B,0x02,0xD4,0x3C,0x1B,0xA4,0xB2,0x01,0xE0,0xE4,0x1B,0xA4,0xB2,0x05,0x1C,
+0x64,0x4E,0x50,0x4F,0x10,0x35,0x6D,0x00,0xA2,0x18,0xAC,0x5B,0xED,0x5B,0x27,0xB2,
+0x2E,0xB2,0x92,0xB2,0xBF,0x1B,0x02,0xD4,0x64,0x1B,0xA4,0xB2,0x01,0xE0,0x2C,0x1B,
+0xA4,0xB2,0xE3,0x18,0x9B,0xB2,0x00,0x28,0xCB,0xD1,0x56,0x49,0x08,0x60,0x4D,0x49,
+0x0C,0x78,0x43,0x49,0x00,0x2C,0x40,0xD0,0x34,0x31,0x0B,0x78,0x00,0x2B,0x00,0xD0,
+0xB3,0xE0,0x4A,0x4B,0x1B,0x78,0x00,0x2B,0x02,0xD0,0x53,0x49,0x03,0xF0,0x7E,0xF9,
+0x4F,0x4C,0x52,0x4A,0x23,0x68,0x13,0x80,0x51,0x4B,0x1B,0x68,0x53,0x80,0x43,0x4B,
+0x1B,0x78,0x00,0x2B,0x06,0xD0,0x01,0x23,0x02,0x21,0x00,0x93,0x00,0x20,0x0B,0x1C,
+0x03,0xF0,0x14,0xF9,0x32,0x49,0x20,0x68,0x4A,0x8F,0x3B,0x4B,0x90,0x42,0x14,0xDA,
+0x41,0x4A,0x47,0x48,0x45,0x32,0x12,0x78,0x00,0x68,0x90,0x42,0x0D,0xDA,0x1B,0x78,
+0x00,0x2B,0x00,0xD0,0x89,0xE0,0x37,0x4B,0x3C,0x31,0x1A,0x68,0x09,0x78,0x8A,0x42,
+0x00,0xDB,0x82,0xE0,0x01,0x32,0x1A,0x60,0x7F,0xE0,0x01,0x22,0x1A,0x70,0x31,0x4A,
+0x00,0x23,0x13,0x60,0x31,0x4A,0x13,0x60,0x77,0xE0,0x08,0x1C,0x34,0x30,0x00,0x78,
+0x00,0x28,0x72,0xD1,0x32,0x48,0x09,0x8F,0x00,0x68,0x88,0x42,0x09,0xDB,0x2E,0x49,
+0x33,0x48,0x45,0x31,0x09,0x78,0x00,0x68,0x88,0x42,0x02,0xDB,0x22,0x49,0x01,0x20,
+0x08,0x70,0x1F,0x49,0x09,0x78,0x00,0x29,0x08,0xD1,0x15,0x49,0x08,0x8F,0x27,0x49,
+0x88,0x42,0x5A,0xD0,0x1C,0x49,0x09,0x78,0x00,0x29,0x56,0xD0,0x11,0x49,0x09,0x68,
+0x01,0x29,0x05,0xDC,0x0E,0x49,0xC9,0x8E,0x8A,0x42,0x01,0xD8,0x8B,0x42,0x49,0xD9,
+0x13,0x4B,0x00,0x20,0x18,0x70,0x13,0x4B,0x01,0x22,0x1A,0x70,0x12,0x4B,0x18,0x70,
+0x12,0x4B,0x1B,0x78,0x83,0x42,0x02,0xD0,0x11,0x49,0x03,0xF0,0x0F,0xF9,0x0A,0x4B,
+0x01,0x22,0x1A,0x70,0x01,0xF0,0x80,0xFB,0x01,0xF0,0x9A,0xFB,0x35,0xE0,0xC0,0x46,
+0xAE,0x09,0x00,0x20,0x9C,0x0D,0x00,0x20,0x7C,0x09,0x00,0x20,0xE0,0x00,0x00,0x20,
+0xC8,0x01,0x00,0x20,0xFF,0xFF,0xFF,0x7F,0xB3,0x01,0x00,0x20,0xB4,0x01,0x00,0x20,
+0xDC,0x01,0x00,0x20,0xDD,0x01,0x00,0x20,0xD4,0x01,0x00,0x20,0xEB,0x01,0x00,0x20,
+0xDA,0x58,0x00,0x00,0xD8,0x01,0x00,0x20,0xE4,0x58,0x00,0x00,0xD0,0x01,0x00,0x20,
+0xEC,0x58,0x00,0x00,0xCC,0x01,0x00,0x20,0x48,0x0D,0x00,0x20,0xFF,0xFF,0x00,0x00,
+0x34,0x11,0x00,0x20,0x20,0x03,0x00,0x20,0xF5,0x58,0x00,0x00,0x54,0x11,0x00,0x20,
+0x38,0x11,0x00,0x20,0x0D,0x4B,0x01,0x22,0x1A,0x70,0x0D,0x4B,0x34,0x33,0x1B,0x78,
+0x00,0x2B,0x10,0xD0,0x0B,0x4B,0x1A,0x78,0x00,0x2A,0x0C,0xD0,0x0A,0x4A,0x00,0x21,
+0x51,0x56,0x03,0x29,0x07,0xD0,0x09,0x49,0x09,0x78,0x48,0x42,0x41,0x41,0x01,0x31,
+0x11,0x70,0x00,0x22,0x1A,0x70,0x05,0xB0,0xF0,0xBD,0xC0,0x46,0xB4,0x01,0x00,0x20,
+0xAE,0x09,0x00,0x20,0xDC,0x01,0x00,0x20,0xB3,0x01,0x00,0x20,0xDD,0x01,0x00,0x20,
+0x10,0xB5,0x54,0x4B,0x1B,0x78,0x00,0x2B,0x0A,0xD0,0x53,0x4B,0x1B,0x68,0x98,0x47,
+0x01,0xF0,0x1A,0xFB,0x01,0xF0,0x34,0xFB,0x01,0xF0,0x56,0xFF,0x02,0xF0,0x90,0xFB,
+0x4E,0x4B,0x02,0x21,0x1A,0x68,0x8A,0x43,0x1A,0x60,0x19,0x68,0x80,0x22,0xD2,0x05,
+0x90,0x68,0x91,0x60,0x19,0x68,0x08,0x20,0x81,0x43,0x19,0x60,0x19,0x68,0x90,0x68,
+0x91,0x60,0x19,0x68,0x04,0x20,0x81,0x43,0x19,0x60,0x1B,0x68,0x91,0x68,0x93,0x60,
+0x40,0x4B,0x18,0x78,0x42,0x4B,0x1B,0x78,0x00,0x28,0x32,0xD0,0x00,0x2B,0x03,0xD0,
+0x00,0x20,0x40,0x49,0x03,0xF0,0x7A,0xF8,0x3F,0x4B,0x80,0x22,0x19,0x68,0x52,0x00,
+0x0A,0x43,0x1A,0x60,0x1A,0x68,0xA0,0x23,0xDB,0x05,0x99,0x68,0x9A,0x60,0x37,0x4B,
+0x3A,0x4A,0x19,0x68,0x0A,0x40,0x1A,0x60,0x1A,0x68,0x80,0x23,0xDB,0x05,0x99,0x68,
+0x9A,0x60,0x37,0x4A,0x01,0x21,0x11,0x70,0x19,0x68,0x80,0x22,0x52,0x04,0x0A,0x43,
+0x1A,0x60,0xC0,0x46,0xC0,0x46,0xC0,0x46,0xC0,0x46,0x62,0xB6,0x31,0x4A,0x19,0x68,
+0x0A,0x40,0x1A,0x60,0xBF,0xF3,0x6F,0x8F,0xFA,0x20,0xC0,0x00,0x02,0xF0,0x6E,0xFC,
+0x11,0xE0,0x00,0x2B,0x02,0xD0,0x2C,0x49,0x03,0xF0,0x48,0xF8,0x2B,0x48,0x02,0xF0,
+0x65,0xFC,0x2B,0x4B,0x1B,0x78,0x00,0x2B,0x05,0xD1,0x2A,0x4B,0x1B,0x78,0x00,0x2B,
+0x01,0xD1,0x02,0xF0,0x59,0xFE,0x1D,0x4B,0x02,0x21,0x1A,0x68,0x0A,0x43,0x1A,0x60,
+0x19,0x68,0x80,0x22,0xD2,0x05,0x90,0x68,0x91,0x60,0x23,0x49,0x01,0x31,0xC8,0x7F,
+0x08,0x21,0x00,0x28,0x06,0xD0,0x18,0x68,0x01,0x43,0x19,0x60,0x19,0x68,0x90,0x68,
+0x91,0x60,0x05,0xE0,0x18,0x68,0x88,0x43,0x18,0x60,0x19,0x68,0x90,0x68,0x91,0x60,
+0x1A,0x68,0x04,0x21,0x0A,0x43,0x1A,0x60,0x1A,0x68,0x80,0x23,0xDB,0x05,0xFA,0x20,
+0x99,0x68,0xC0,0x00,0x9A,0x60,0x02,0xF0,0x31,0xFC,0x06,0x4B,0x1B,0x78,0x00,0x2B,
+0x06,0xD0,0x12,0x4C,0x0D,0x20,0x23,0x68,0x98,0x47,0x23,0x68,0x12,0x20,0x98,0x47,
+0x10,0xBD,0xC0,0x46,0xE8,0x01,0x00,0x20,0x68,0x00,0x00,0x20,0x14,0x00,0x00,0x20,
+0xEB,0x01,0x00,0x20,0xFB,0x58,0x00,0x00,0x0C,0x00,0x00,0x20,0xFF,0xFE,0xFF,0xFF,
+0x2C,0x00,0x00,0x20,0xFF,0xFF,0xFF,0xFE,0x01,0x59,0x00,0x00,0x40,0x42,0x0F,0x00,
+0xE5,0x01,0x00,0x20,0xE4,0x01,0x00,0x20,0xAE,0x09,0x00,0x20,0xF8,0x01,0x00,0x20,
+0x10,0xB5,0x31,0x4B,0x02,0x24,0x19,0x78,0x30,0x4B,0x4A,0xB2,0x1B,0x78,0x00,0x2B,
+0x25,0xD0,0x2F,0x4B,0x1B,0x78,0x00,0x2B,0x21,0xD1,0x2E,0x4B,0x1B,0x78,0x00,0x2B,
+0x1D,0xD1,0x2D,0x4B,0xA2,0x42,0x07,0xD0,0x2C,0x48,0x80,0x7B,0x00,0x28,0x03,0xD1,
+0x2B,0x48,0x00,0x68,0x00,0x28,0x03,0xD0,0x00,0x21,0x19,0x60,0x01,0x24,0x0E,0xE0,
+0x28,0x4A,0x18,0x68,0x92,0x68,0x90,0x42,0x01,0xDA,0x01,0x30,0x18,0x60,0x00,0x29,
+0x36,0xD0,0x21,0x4B,0x00,0x24,0x1B,0x68,0x93,0x42,0x16,0xDA,0x30,0xE0,0x63,0xB2,
+0x93,0x42,0x2D,0xD0,0x01,0x2B,0x1D,0xD0,0x02,0x2B,0x02,0xD0,0x00,0x2B,0x0C,0xD0,
+0x24,0xE0,0x1D,0x4B,0x1B,0x78,0x00,0x2B,0x03,0xD0,0x00,0x20,0x1B,0x49,0x02,0xF0,
+0xA5,0xFF,0x00,0x20,0x02,0xF0,0x78,0xFB,0x18,0xE0,0x17,0x4B,0x1B,0x78,0x00,0x2B,
+0x03,0xD0,0x00,0x20,0x16,0x49,0x02,0xF0,0x99,0xFF,0x12,0x4B,0x58,0x68,0x02,0xF0,
+0x6B,0xFB,0x0B,0xE0,0x10,0x4B,0x1B,0x78,0x00,0x2B,0x03,0xD0,0x00,0x20,0x11,0x49,
+0x02,0xF0,0x8C,0xFF,0x0B,0x4B,0x18,0x68,0x02,0xF0,0x5E,0xFB,0x02,0x4B,0x1C,0x70,
+0x02,0xF0,0x4C,0xFB,0x10,0xBD,0xC0,0x46,0x3C,0x00,0x00,0x20,0x1C,0x03,0x00,0x20,
+0xE3,0x01,0x00,0x20,0xE2,0x01,0x00,0x20,0x5C,0x00,0x00,0x20,0x70,0x01,0x00,0x20,
+0xE0,0x00,0x00,0x20,0xFC,0x02,0x00,0x20,0xEB,0x01,0x00,0x20,0x09,0x59,0x00,0x00,
+0x0E,0x59,0x00,0x00,0x13,0x59,0x00,0x00,0x08,0xB5,0x02,0xF0,0x5F,0xFB,0x08,0xBD,
+0x08,0xB5,0x02,0xF0,0x4D,0xFB,0x08,0xBD,0x08,0xB5,0x02,0xF0,0xE5,0xFA,0x80,0x23,
+0xDB,0x05,0x9A,0x6C,0x01,0x21,0x0A,0x43,0x9A,0x64,0xFF,0xF7,0xF1,0xFF,0x08,0xBD,
+0xF0,0xB5,0x87,0xB0,0xFF,0xF7,0xF0,0xFF,0x78,0x4A,0x79,0x4C,0x53,0x78,0x15,0x78,
+0x78,0x48,0x10,0xE0,0x01,0x3B,0xDB,0xB2,0x9A,0x1C,0x67,0x46,0xB2,0x18,0x79,0x01,
+0x52,0x00,0x12,0x5B,0xC9,0x18,0x4F,0x00,0x3A,0x52,0x73,0x4A,0x00,0x27,0x8F,0x54,
+0x00,0x2B,0xEF,0xD1,0x63,0x46,0x5A,0x1E,0xD2,0xB2,0x00,0x2B,0x04,0xD0,0x56,0x1C,
+0x2B,0x1C,0xB6,0x01,0x94,0x46,0xF3,0xE7,0x6C,0x4B,0x6D,0x4C,0x1B,0x78,0x6D,0x48,
+0x67,0x49,0x6D,0x4A,0x0E,0xE0,0x01,0x3B,0xDB,0xB2,0xE5,0x5C,0xC6,0x5C,0x01,0x35,
+0x02,0x36,0xAD,0x01,0xAD,0x19,0x6D,0x00,0x6E,0x5A,0x5D,0x00,0xAE,0x52,0x67,0x4D,
+0x00,0x26,0xEE,0x54,0x00,0x2B,0xEE,0xD1,0x65,0x25,0x03,0x95,0x5B,0x4C,0x66,0xE0,
+0xFF,0xF7,0xB2,0xFF,0x26,0x78,0x63,0x78,0x05,0x96,0x2D,0xE0,0x01,0x3B,0xDB,0xB2,
+0x58,0x4F,0xF0,0x18,0x04,0x9D,0x40,0x00,0x9A,0x1C,0xC0,0x5B,0xAD,0x18,0x54,0x4F,
+0x6D,0x00,0xEF,0x5B,0xC7,0x1B,0x04,0xD4,0x51,0x4F,0xED,0x5B,0x45,0x1B,0x02,0x95,
+0x03,0xE0,0x4F,0x4F,0xED,0x5B,0x2D,0x1A,0x02,0x95,0x04,0x98,0x87,0x18,0x4C,0x48,
+0x7F,0x00,0xC0,0x5B,0x4B,0x4F,0x84,0x46,0xF0,0x18,0x42,0x00,0x15,0x1C,0x62,0x46,
+0xEA,0x53,0x49,0x4D,0x2F,0x5C,0x02,0x9D,0xBD,0x42,0x00,0xDA,0x3D,0x1C,0x46,0x4F,
+0x3D,0x54,0x00,0x2B,0xD2,0xD1,0x0B,0x1C,0x59,0x1E,0xC9,0xB2,0x00,0x2B,0x05,0xD0,
+0x48,0x1C,0x80,0x01,0x05,0x9B,0x4E,0x01,0x04,0x90,0xF2,0xE7,0x3F,0x4B,0x3C,0x4A,
+0x1B,0x78,0x22,0xE0,0x3E,0x4D,0x01,0x3B,0xDB,0xB2,0x3E,0x4F,0xEE,0x5C,0x3E,0x48,
+0xFD,0x5C,0x59,0x00,0x01,0x36,0x09,0x5A,0x02,0x35,0xB0,0x01,0x40,0x19,0x40,0x00,
+0x87,0x5A,0x80,0x5A,0xCF,0x1B,0x01,0xD4,0x09,0x1A,0x00,0xE0,0x41,0x1A,0xB6,0x01,
+0x75,0x19,0x2F,0x48,0x6D,0x00,0x46,0x5B,0x33,0x48,0x5D,0x00,0x2E,0x52,0x33,0x48,
+0xC5,0x5C,0xA9,0x42,0x00,0xDA,0x29,0x1C,0xC1,0x54,0x00,0x2B,0xDA,0xD1,0x03,0x9B,
+0x01,0x3B,0xDB,0xB2,0x03,0x93,0x00,0x2B,0x92,0xD1,0x61,0x78,0x24,0x78,0x24,0x4A,
+0x04,0x94,0x1E,0xE0,0x01,0x3B,0xDB,0xB2,0x45,0x01,0xED,0x18,0x21,0x4F,0x6D,0x00,
+0xEE,0x5B,0x25,0x88,0xAC,0x46,0x9D,0x1C,0x66,0x45,0x09,0xD9,0x27,0x88,0xF6,0x1B,
+0x8F,0x01,0xBC,0x46,0x65,0x44,0x6D,0x00,0xB6,0xB2,0xAF,0x5A,0xAE,0x52,0x05,0xE0,
+0x8E,0x01,0x75,0x19,0x6D,0x00,0xAE,0x5A,0x00,0x26,0xAE,0x52,0x00,0x2B,0xE1,0xD1,
+0x01,0x1C,0x48,0x1E,0xC0,0xB2,0x00,0x29,0x05,0xD0,0x41,0x1C,0x18,0x4F,0xCC,0x01,
+0x04,0x9B,0xE4,0x19,0xF2,0xE7,0x11,0x4B,0x13,0x4F,0x1B,0x78,0x10,0x4E,0x15,0x48,
+0x10,0xE0,0x01,0x3B,0xDB,0xB2,0xF5,0x5C,0x13,0x49,0xED,0x01,0x5A,0x00,0x6D,0x18,
+0xD4,0x5B,0x29,0x88,0x8C,0x42,0x03,0xD9,0x2D,0x88,0x64,0x1B,0x84,0x52,0x01,0xE0,
+0x00,0x25,0x85,0x52,0x00,0x2B,0xEC,0xD1,0x07,0xB0,0xF0,0xBD,0x0A,0x03,0x00,0x20,
+0x00,0x40,0x00,0x40,0xF8,0x03,0x00,0x20,0xB3,0x0A,0x00,0x20,0x7C,0x09,0x00,0x20,
+0x30,0x75,0x00,0x00,0x2A,0x75,0x00,0x00,0x14,0x02,0x00,0x20,0xA4,0x0A,0x00,0x20,
+0x02,0x40,0x00,0x40,0x3C,0x0D,0x00,0x20,0x82,0x40,0x00,0x40,0xF0,0xB5,0x87,0xB0,
+0x02,0xF0,0x4A,0xF8,0x02,0xF0,0x60,0xF9,0x00,0x28,0xFB,0xD1,0x52,0x4B,0x1B,0x78,
+0x02,0x2B,0x09,0xD0,0x51,0x4B,0x52,0x49,0x40,0x33,0x1A,0x78,0x53,0x42,0x54,0x18,
+0xE0,0x54,0x01,0x33,0x93,0x42,0xFA,0xDD,0x4C,0x4E,0x4E,0x4F,0x33,0x1C,0x40,0x33,
+0x1C,0x78,0x64,0x42,0x0C,0xE0,0xFA,0x78,0x80,0x23,0x12,0x19,0xD2,0xB2,0xDB,0x05,
+0x1A,0x71,0xFF,0xF7,0xC1,0xFE,0x28,0x78,0x20,0x18,0x03,0xF0,0xF3,0xFD,0x01,0x34,
+0x35,0x1C,0x40,0x35,0x2B,0x78,0x9C,0x42,0xED,0xDD,0x00,0x26,0x25,0xE0,0x2C,0x78,
+0x2F,0x1C,0x64,0x42,0x40,0x3F,0x1A,0xE0,0x3E,0x4B,0xDA,0x78,0x80,0x23,0x12,0x19,
+0xDB,0x05,0xD2,0xB2,0x1A,0x71,0xFF,0xF7,0xA7,0xFE,0x2D,0x78,0x04,0xA9,0x65,0x19,
+0x05,0xAA,0x28,0x1C,0x03,0xF0,0xF8,0xFD,0x35,0x49,0x04,0x9B,0x4A,0x5D,0xFF,0x2B,
+0x00,0xDD,0xFF,0x23,0x9A,0x42,0x00,0xDA,0x1A,0x1C,0x4A,0x55,0x01,0x34,0x3D,0x1C,
+0x40,0x35,0x2B,0x78,0x9C,0x42,0xDF,0xDD,0x01,0x36,0x2F,0x4A,0x2B,0x4D,0x13,0x78,
+0x40,0x35,0x9E,0x42,0xD3,0xDB,0x01,0xF0,0xDF,0xFF,0x2C,0x49,0x2A,0x78,0x0D,0x78,
+0x2B,0x49,0x27,0x48,0x09,0x78,0x01,0x23,0x03,0x91,0x9B,0x1A,0x00,0x21,0x29,0x4C,
+0x10,0x18,0x94,0x46,0x11,0xE0,0xC6,0x18,0x72,0x1E,0x12,0x78,0xC7,0x5C,0x6A,0x43,
+0x02,0x92,0x03,0x9A,0x57,0x43,0x02,0x9A,0xD7,0x19,0x72,0x78,0x6A,0x43,0xBA,0x18,
+0x94,0x42,0x01,0xDB,0x94,0xB2,0x19,0x1C,0x01,0x33,0x9C,0x45,0xEB,0xDC,0x19,0x4B,
+0x1D,0x4C,0xDA,0x78,0x51,0x18,0xC9,0xB2,0x99,0x70,0x13,0x4B,0x18,0x78,0x00,0x28,
+0x05,0xD1,0x23,0x78,0x00,0x2B,0x02,0xD0,0x18,0x49,0x02,0xF0,0xB7,0xFD,0x23,0x78,
+0x00,0x2B,0x0B,0xD0,0x0D,0x4B,0x00,0x20,0x40,0x33,0x19,0x78,0x0C,0x4A,0x49,0x00,
+0x01,0x31,0xC9,0xB2,0x01,0x23,0x00,0x90,0x02,0xF0,0x50,0xFD,0x0E,0x4B,0x1B,0x78,
+0x00,0x2B,0x06,0xD0,0x01,0x21,0x00,0x20,0x0D,0x4A,0x0B,0x1C,0x00,0x90,0x02,0xF0,
+0x45,0xFD,0x07,0xB0,0xF0,0xBD,0xC0,0x46,0xE0,0x01,0x00,0x20,0x48,0x0D,0x00,0x20,
+0x93,0x01,0x00,0x20,0xAA,0x0A,0x00,0x20,0x87,0x0D,0x00,0x20,0x54,0x00,0x00,0x20,
+0x55,0x00,0x00,0x20,0xFF,0xFF,0x00,0x00,0xEB,0x01,0x00,0x20,0x1A,0x59,0x00,0x00,
+0xAC,0x0A,0x00,0x20,0x13,0xB5,0x24,0x4B,0x24,0x4C,0x1B,0x68,0x00,0x2B,0x0E,0xD0,
+0x23,0x78,0x00,0x2B,0x03,0xD0,0x00,0x20,0x21,0x49,0x02,0xF0,0x77,0xFD,0xFF,0xF7,
+0x6D,0xFA,0x23,0x78,0x00,0x2B,0x02,0xD1,0x02,0xF0,0x38,0xF8,0xFE,0xE7,0x23,0x78,
+0x00,0x2B,0x09,0xD0,0x1B,0x4C,0x23,0x68,0xDA,0x00,0x05,0xD5,0xFF,0xF7,0x5E,0xFA,
+0x22,0x68,0x19,0x4B,0x13,0x40,0x23,0x60,0x14,0x4C,0x23,0x78,0x00,0x2B,0x22,0xD0,
+0x14,0x4B,0x1B,0x68,0x5A,0x01,0x1E,0xD5,0x14,0x49,0x00,0x20,0x02,0xF0,0x56,0xFD,
+0x13,0x4B,0x14,0x4A,0x19,0x88,0x11,0x80,0x59,0x88,0x51,0x80,0x99,0x88,0x91,0x80,
+0xDB,0x88,0xD3,0x80,0x10,0x4B,0x1B,0x78,0x13,0x81,0x23,0x78,0x00,0x2B,0x05,0xD0,
+0x00,0x20,0x05,0x21,0x02,0x23,0x00,0x90,0x02,0xF0,0xE8,0xFC,0x05,0x4B,0x0B,0x4A,
+0x19,0x68,0x0A,0x40,0x1A,0x60,0x13,0xBD,0x0C,0x1E,0x00,0x20,0xEB,0x01,0x00,0x20,
+0x20,0x59,0x00,0x00,0x58,0x00,0x00,0x20,0xFF,0xFF,0xFF,0xEF,0x27,0x59,0x00,0x00,
+0x04,0x02,0x00,0x20,0x54,0x11,0x00,0x20,0xAA,0x0A,0x00,0x20,0xFF,0xFF,0xFF,0xFB,
+0x10,0xB5,0x02,0x28,0x04,0xD0,0x03,0x28,0x45,0xD0,0x01,0x28,0x33,0xD1,0x15,0xE0,
+0xFF,0xF7,0xF6,0xF9,0x29,0x4B,0x2A,0x4C,0x40,0x33,0x1B,0x78,0x29,0x49,0x50,0x22,
+0x23,0x70,0x29,0x48,0x04,0xF0,0xA6,0xF9,0x28,0x4B,0x0D,0x20,0x1B,0x68,0x98,0x47,
+0xFF,0xF7,0xF4,0xF9,0x23,0x78,0x10,0x2B,0x1A,0xD1,0x14,0xE0,0xFF,0xF7,0xE0,0xF9,
+0x1E,0x4B,0x1F,0x4C,0x40,0x33,0x1B,0x78,0x21,0x49,0x50,0x22,0x23,0x70,0x1E,0x48,
+0x04,0xF0,0x90,0xF9,0x1D,0x4B,0x0C,0x20,0x1B,0x68,0x98,0x47,0xFF,0xF7,0xDE,0xF9,
+0x23,0x78,0x10,0x2B,0x04,0xD1,0x1B,0x4B,0xDA,0x78,0x9A,0x70,0x02,0xF0,0xD1,0xFA,
+0x02,0xF0,0x54,0xFA,0x20,0xE0,0x18,0x4B,0x1A,0x78,0x00,0x2A,0x05,0xD0,0x17,0x4A,
+0x11,0x68,0x01,0x31,0x11,0x60,0x00,0x22,0x1A,0x70,0x15,0x4B,0x1A,0x68,0x13,0x2A,
+0x05,0xDD,0x00,0x22,0x1A,0x60,0x0A,0x4B,0x10,0x22,0x1A,0x70,0x0C,0xE0,0x0F,0x4B,
+0x1A,0x68,0x3B,0x2A,0x08,0xDD,0x00,0x22,0x1A,0x60,0x0E,0x4B,0x01,0x20,0x1B,0x68,
+0x98,0x47,0x0D,0x4B,0x01,0x22,0x1A,0x70,0x10,0xBD,0xC0,0x46,0xAE,0x09,0x00,0x20,
+0x1D,0x03,0x00,0x20,0x4A,0x74,0x00,0x00,0x48,0x0D,0x00,0x20,0xF8,0x01,0x00,0x20,
+0x9A,0x74,0x00,0x00,0xAA,0x0A,0x00,0x20,0xC4,0x01,0x00,0x20,0xC0,0x01,0x00,0x20,
+0xBC,0x01,0x00,0x20,0x6C,0x00,0x00,0x20,0xE7,0x01,0x00,0x20,0x10,0xB5,0x0C,0x4B,
+0x01,0x22,0x99,0x79,0x00,0x23,0x00,0xE0,0x23,0x1C,0x5C,0x1C,0x10,0x1C,0xE4,0xB2,
+0x98,0x40,0x81,0x42,0xF8,0xDA,0x07,0x4A,0x07,0x21,0x13,0x71,0x80,0x22,0xD2,0x05,
+0x0B,0x40,0x19,0x02,0x10,0x6C,0x04,0x4B,0x03,0x40,0x0B,0x43,0x13,0x64,0x10,0xBD,
+0x48,0x0D,0x00,0x20,0x5C,0x00,0x00,0x20,0xFF,0xF8,0xFF,0xFF,0x06,0x4B,0x07,0x22,
+0xD9,0x79,0x80,0x23,0xDB,0x05,0x18,0x6C,0x11,0x40,0x04,0x4A,0x09,0x02,0x02,0x40,
+0x0A,0x43,0x1A,0x64,0x70,0x47,0xC0,0x46,0x48,0x0D,0x00,0x20,0xFF,0xF8,0xFF,0xFF,
+0xF0,0xB5,0x8D,0xB0,0x04,0x90,0xFF,0xF7,0xC9,0xFF,0xC7,0x4B,0xC7,0x48,0xDE,0x78,
+0x00,0x21,0x05,0x96,0x9C,0x78,0x07,0xE0,0x01,0x3B,0xDB,0xB2,0xEE,0x18,0x76,0x00,
+0x31,0x52,0x00,0x2B,0xF8,0xD1,0x05,0x92,0x05,0x9A,0x05,0x9E,0x01,0x3A,0xD2,0xB2,
+0x00,0x2E,0x02,0xD0,0x23,0x1C,0x55,0x01,0xF3,0xE7,0x04,0x9F,0x00,0x2F,0x05,0xD0,
+0xBB,0x4B,0x05,0x9E,0x5B,0x7B,0x06,0x96,0x03,0x93,0x04,0xE0,0xB9,0x4B,0x02,0x27,
+0x9B,0x78,0x06,0x97,0x03,0x93,0x68,0x46,0x0C,0x21,0x0B,0x56,0xB2,0x4C,0x0B,0x93,
+0x5B,0x42,0x09,0x93,0xAA,0xE0,0x6A,0x46,0x18,0x23,0x9A,0x56,0xE6,0x7A,0x27,0x1C,
+0x02,0x92,0x0D,0xE0,0x30,0x1C,0x00,0x21,0x2A,0x1C,0x02,0x9B,0x02,0xF0,0x4C,0xF9,
+0x30,0x1C,0x01,0x21,0x2A,0x1C,0x02,0x9B,0x02,0xF0,0x46,0xF9,0x01,0x36,0xF6,0xB2,
+0xBB,0x7A,0xFA,0x7A,0xD2,0x18,0x3B,0x1C,0x96,0x42,0xEB,0xDB,0x04,0x9E,0x00,0x2E,
+0x00,0xD1,0x0E,0x3D,0x68,0x46,0x18,0x21,0x08,0x56,0x5E,0x7B,0x9E,0x4F,0x02,0x90,
+0x0D,0xE0,0x30,0x1C,0x00,0x21,0x2A,0x1C,0x02,0x9B,0x02,0xF0,0x2D,0xF9,0x30,0x1C,
+0x01,0x21,0x2A,0x1C,0x02,0x9B,0x02,0xF0,0x27,0xF9,0x01,0x36,0xF6,0xB2,0x7A,0x7B,
+0x3B,0x7B,0xD3,0x18,0x9E,0x42,0xEC,0xDB,0xFF,0xF7,0xAE,0xFC,0x96,0x4B,0x1B,0x78,
+0x00,0x2B,0x06,0xD0,0x01,0x23,0x18,0x1C,0x19,0x1C,0x0B,0xAA,0x00,0x93,0x02,0xF0,
+0xAD,0xFB,0x00,0x25,0x8C,0x4E,0x90,0x4F,0x0E,0xE0,0x3B,0x78,0x00,0x2B,0x09,0xD0,
+0x8E,0x4B,0xEA,0x01,0xD2,0x18,0x00,0x23,0xB1,0x78,0x01,0x20,0x00,0x93,0x02,0x23,
+0x02,0xF0,0x9C,0xFB,0x01,0x35,0xED,0xB2,0xF3,0x78,0x9D,0x42,0xED,0xD3,0x0B,0x9A,
+0xB6,0x78,0xD2,0xB2,0x02,0x96,0x07,0x92,0x80,0x4D,0x39,0xE0,0x01,0x3B,0xDB,0xB2,
+0x08,0x9E,0x99,0x1C,0x71,0x18,0x82,0x4F,0x49,0x00,0xCE,0x5B,0xD1,0x18,0x48,0x00,
+0x40,0x5B,0xB7,0xB2,0xB8,0x42,0x14,0xDC,0xC0,0x1B,0x01,0x1C,0x80,0x31,0x01,0xDA,
+0x80,0x20,0x40,0x42,0xD7,0x18,0x7F,0x28,0x00,0xDD,0x7F,0x20,0x79,0x49,0x78,0x54,
+0xD1,0x18,0x48,0x00,0x2E,0x52,0x1C,0x27,0x6E,0x46,0x77,0x48,0xBE,0x5D,0x0E,0x54,
+0x13,0xE0,0x04,0x9E,0x00,0x2E,0x10,0xD0,0x74,0x4E,0xB0,0x42,0x08,0xD0,0x71,0x4E,
+0x8E,0x57,0x80,0x19,0x87,0x42,0x03,0xDA,0x6F,0x48,0x0E,0x5C,0x01,0x36,0x0E,0x54,
+0xD1,0x18,0x01,0x27,0x49,0x00,0x7F,0x42,0x6F,0x52,0x00,0x2B,0xC6,0xD1,0x63,0x46,
+0x5E,0x1E,0xF6,0xB2,0x00,0x2B,0x06,0xD0,0x72,0x1C,0x92,0x01,0x08,0x92,0x02,0x9B,
+0x72,0x01,0xB4,0x46,0xF1,0xE7,0x0B,0x9B,0x01,0x3B,0x0B,0x93,0x0B,0x9D,0x09,0x9E,
+0xB5,0x42,0x00,0xDB,0x4F,0xE7,0x04,0x9F,0x00,0x2F,0x45,0xD0,0xA0,0x78,0xE3,0x78,
+0x04,0x90,0x61,0x78,0x56,0x4A,0x06,0x91,0x24,0x78,0x02,0x94,0x11,0x7C,0xD0,0x7A,
+0x5B,0x4C,0x08,0x18,0xC0,0xB2,0x07,0x90,0x12,0x7B,0x89,0x18,0xC9,0xB2,0x08,0x91,
+0x55,0x4A,0x28,0xE0,0x03,0x9E,0x01,0x3B,0xDB,0xB2,0x00,0x2E,0x01,0xD1,0xC7,0x18,
+0xD6,0x55,0x06,0x9E,0xB1,0x42,0x02,0xD2,0x02,0x9F,0xBB,0x42,0x0C,0xD3,0xEF,0x18,
+0xC6,0x18,0x09,0x97,0x97,0x5D,0xBC,0x46,0x09,0x9F,0xE7,0x5D,0xBC,0x44,0x08,0x9F,
+0xBC,0x44,0x67,0x46,0x97,0x55,0x0B,0xE0,0xEF,0x18,0xC6,0x18,0x09,0x97,0x97,0x5D,
+0xBC,0x46,0x09,0x9F,0xE7,0x5D,0xBC,0x44,0x07,0x9F,0xBC,0x44,0x67,0x46,0x97,0x55,
+0x00,0x2B,0xD7,0xD1,0x0B,0x1C,0x59,0x1E,0xC9,0xB2,0x00,0x2B,0x3E,0xD0,0x26,0x25,
+0x04,0x9B,0x48,0x01,0x4D,0x43,0xF3,0xE7,0x63,0x7C,0xE2,0x79,0x07,0x25,0x9A,0x18,
+0x03,0x92,0x34,0x4A,0xA0,0x7B,0x02,0x21,0x52,0x5E,0x26,0x79,0xAD,0x1A,0x6D,0x00,
+0x86,0x19,0xED,0xB2,0x34,0x49,0x84,0x46,0x09,0xE0,0xB8,0x18,0x44,0x5C,0x01,0x32,
+0x2C,0x19,0x44,0x54,0xD2,0xB2,0xB2,0x42,0xF7,0xDB,0x01,0x33,0xDB,0xB2,0x03,0x9A,
+0x93,0x42,0x02,0xDA,0x62,0x46,0x5F,0x01,0xF5,0xE7,0x23,0x4A,0x2A,0x49,0x10,0x7C,
+0xD3,0x7B,0x56,0x79,0x95,0x79,0x9E,0x19,0x45,0x19,0x84,0x46,0x09,0xE0,0xB8,0x18,
+0x44,0x5C,0x01,0x32,0x0E,0x3C,0x44,0x54,0xD2,0xB2,0xAA,0x42,0xF7,0xDB,0x01,0x33,
+0xDB,0xB2,0xB3,0x42,0x02,0xDA,0x62,0x46,0x5F,0x01,0xF6,0xE7,0x1A,0x4B,0x1B,0x78,
+0x00,0x2B,0x13,0xD0,0x05,0x20,0x1F,0x49,0x02,0xF0,0x10,0xFB,0x0E,0xE0,0x2B,0x78,
+0x00,0x2B,0x08,0xD0,0x18,0x4B,0x72,0x01,0xA1,0x78,0xD2,0x18,0x05,0x20,0x01,0x23,
+0x00,0x93,0x02,0xF0,0xAB,0xFA,0x01,0x36,0xF6,0xB2,0x02,0xE0,0x0A,0x4C,0x0E,0x4D,
+0x05,0x9E,0xE3,0x78,0xB3,0x42,0xEA,0xD8,0x00,0x21,0x01,0x20,0x0A,0x1C,0x40,0x42,
+0x02,0x23,0x02,0xF0,0x01,0xF8,0x01,0x20,0x40,0x42,0x01,0x21,0x00,0x22,0x02,0x23,
+0x01,0xF0,0xFA,0xFF,0xA4,0x78,0x25,0xE0,0x0A,0x03,0x00,0x20,0xF8,0x03,0x00,0x20,
+0x48,0x0D,0x00,0x20,0x04,0x02,0x00,0x20,0xEB,0x01,0x00,0x20,0x84,0x40,0x00,0x40,
+0x00,0x40,0x00,0x40,0x64,0x0E,0x00,0x20,0xB3,0x0A,0x00,0x20,0xFF,0xFF,0x00,0x00,
+0x36,0x75,0x00,0x00,0x2E,0x59,0x00,0x00,0x01,0x3C,0x00,0x21,0xE4,0xB2,0x0A,0x1C,
+0x20,0x1C,0x01,0x23,0x01,0xF0,0xD8,0xFF,0x01,0x21,0x20,0x1C,0x00,0x22,0x0B,0x1C,
+0x01,0xF0,0xD2,0xFF,0x00,0x2C,0xEF,0xD1,0xFF,0xF7,0x30,0xFE,0x0D,0xB0,0xF0,0xBD,
+0x08,0xB5,0x03,0xF0,0xC5,0xFD,0x05,0x4B,0x01,0x20,0x1B,0x68,0x98,0x47,0x01,0x20,
+0x04,0xF0,0x22,0xF9,0x01,0xF0,0xD6,0xFD,0x08,0xBD,0xC0,0x46,0xF8,0x01,0x00,0x20,
+0xF7,0xB5,0x2C,0x4A,0x00,0x20,0x10,0x60,0x2B,0x4A,0x2C,0x4E,0x11,0x8C,0x2C,0x4A,
+0x11,0x60,0x72,0x1D,0xD2,0x7F,0xF1,0x7D,0x50,0x1E,0x44,0x42,0x60,0x41,0x29,0x4C,
+0x08,0x1A,0x00,0x90,0x20,0x60,0xB0,0x1D,0xC5,0x7F,0x37,0x7E,0x6B,0x1E,0x58,0x42,
+0x58,0x41,0x3B,0x1A,0x01,0x93,0x63,0x60,0x01,0x2A,0x02,0xD1,0x00,0x20,0x20,0x81,
+0x05,0xE0,0x26,0x23,0xF0,0x5E,0x49,0x00,0x03,0xF0,0xBA,0xFE,0x20,0x81,0x01,0x2D,
+0x02,0xD1,0x00,0x23,0x63,0x81,0x05,0xE0,0x28,0x23,0xF0,0x5E,0x79,0x00,0x03,0xF0,
+0xAF,0xFE,0x60,0x81,0x15,0x4F,0x01,0x9B,0x28,0x20,0x3E,0x5E,0x59,0x00,0x70,0x00,
+0x80,0x19,0x03,0xF0,0xA5,0xFE,0x40,0x43,0x12,0x4C,0x43,0x00,0x80,0x00,0xE3,0x60,
+0xC3,0x18,0x23,0x61,0x26,0x20,0x3D,0x5E,0x00,0x9B,0x68,0x00,0x59,0x00,0x40,0x19,
+0x03,0xF0,0x96,0xFE,0x2C,0x37,0x60,0x61,0xA0,0x61,0x3B,0x78,0x00,0x2B,0x02,0xD1,
+0xE6,0x61,0x25,0x62,0x01,0xE0,0xE5,0x61,0x26,0x62,0x07,0x4B,0x01,0x22,0x52,0x42,
+0x5A,0x60,0xF7,0xBD,0x9C,0x0D,0x00,0x20,0x48,0x0D,0x00,0x20,0xAE,0x09,0x00,0x20,
+0x20,0x02,0x00,0x20,0x24,0x09,0x00,0x20,0xCC,0x00,0x00,0x20,0xF0,0xB5,0x24,0x4B,
+0x87,0xB0,0x1E,0x7E,0xDB,0x7D,0x72,0x1C,0xD9,0x1C,0x02,0x33,0x03,0x93,0x05,0x92,
+0x00,0x23,0x20,0x4A,0x04,0x91,0x18,0x1C,0x05,0x9C,0xE5,0x1A,0xEF,0x01,0x01,0x97,
+0xBC,0x5A,0xB8,0x52,0x04,0x9C,0xAD,0x01,0x29,0x19,0x4F,0x00,0xBC,0x5A,0x1A,0x4C,
+0xB8,0x52,0x00,0x27,0x2F,0x55,0x0F,0x55,0x01,0x99,0x18,0x4F,0x01,0x33,0xCF,0x19,
+0x02,0x97,0x39,0x88,0x38,0x80,0x03,0x99,0x6F,0x18,0x79,0x00,0x01,0x91,0x89,0x5A,
+0x01,0x99,0x88,0x52,0x12,0x49,0x6D,0x18,0x00,0x21,0x29,0x70,0x39,0x55,0xF7,0x1A,
+0x0C,0x4D,0x01,0x37,0xD8,0xDA,0x00,0x22,0x01,0x36,0x03,0x9B,0x11,0x1C,0xB6,0x01,
+0x58,0x00,0x2F,0x5A,0x2A,0x52,0xF0,0x18,0x47,0x00,0xEC,0x5B,0xEA,0x53,0x06,0x4F,
+0xF9,0x54,0x01,0x3B,0x39,0x54,0x01,0x2B,0xF2,0xD1,0x07,0xB0,0xF0,0xBD,0xC0,0x46,
+0xAE,0x09,0x00,0x20,0x00,0x40,0x00,0x40,0x00,0x20,0x00,0x40,0x02,0x40,0x00,0x40,
+0x01,0x20,0x00,0x40,0xF7,0xB5,0x0D,0x4B,0x19,0x7E,0xDE,0x7D,0x48,0x1C,0x01,0x36,
+0x00,0x23,0x01,0x90,0x01,0x9C,0x32,0x1C,0xE7,0x1A,0xBF,0x01,0x95,0x1C,0xAC,0x46,
+0xBC,0x44,0x07,0x4C,0x00,0x25,0x60,0x46,0x01,0x3A,0x05,0x55,0x50,0x1C,0xF5,0xDA,
+0x01,0x33,0xCA,0x1A,0x01,0x32,0xED,0xDA,0xF7,0xBD,0xC0,0x46,0xAE,0x09,0x00,0x20,
+0x00,0x20,0x00,0x40,0x00,0xB5,0x0D,0x4B,0x08,0x22,0x9B,0x5E,0x0C,0x4A,0x11,0x1C,
+0x35,0x31,0x09,0x78,0x12,0x7F,0x4B,0x43,0x52,0xB2,0x9B,0x11,0x93,0x42,0x00,0xDA,
+0x13,0x1C,0x08,0x4A,0x13,0x60,0x80,0x22,0xD2,0x05,0x1B,0x05,0x19,0x09,0x90,0x69,
+0x05,0x4B,0x03,0x40,0x0B,0x43,0x93,0x61,0x00,0xBD,0xC0,0x46,0x70,0x01,0x00,0x20,
+0x48,0x0D,0x00,0x20,0x38,0x0D,0x00,0x20,0xFF,0xFF,0x00,0xF0,0xF0,0xB5,0xA9,0x4A,
+0xA9,0x48,0x11,0x68,0x07,0x68,0x93,0xB0,0x8C,0x46,0x0D,0x22,0x00,0x21,0x7F,0x25,
+0xFF,0x24,0x01,0x97,0x90,0x00,0x83,0x18,0xA4,0x4E,0x5B,0x00,0xF3,0x18,0x99,0x87,
+0x00,0x27,0x38,0x33,0x1F,0x72,0x67,0x46,0x39,0x50,0x01,0x3A,0x01,0x9F,0xD2,0xB2,
+0x39,0x50,0x00,0x26,0xDD,0x72,0x5D,0x72,0x1C,0x73,0x9C,0x72,0xD9,0x80,0xFF,0x2A,
+0xE8,0xD1,0x9B,0x4A,0x9B,0x4B,0x11,0x7E,0x98,0x68,0x9B,0x4C,0x97,0x4D,0x01,0x39,
+0x04,0x90,0xA6,0x81,0x2E,0x60,0x88,0x42,0x02,0xDA,0x01,0x30,0x04,0x90,0x98,0x60,
+0xDE,0x68,0x11,0x96,0x00,0x2E,0x02,0xDD,0x01,0x3E,0x11,0x96,0xDE,0x60,0xD1,0x7D,
+0x1A,0x68,0x01,0x39,0x8A,0x42,0x01,0xDA,0x01,0x32,0x1A,0x60,0x5A,0x68,0x00,0x2A,
+0x01,0xDD,0x01,0x3A,0x5A,0x60,0x04,0x9F,0x11,0x98,0x87,0x42,0x00,0xDA,0xA3,0xE0,
+0x19,0x68,0x5B,0x68,0x84,0x4A,0x06,0x93,0x88,0x4B,0x12,0x68,0x1B,0x68,0x86,0x4C,
+0x0D,0x93,0x80,0x4B,0x10,0x91,0x1B,0x68,0x09,0x92,0x0A,0x93,0xA4,0x89,0x84,0x48,
+0x0C,0x94,0x06,0x9D,0x10,0x9E,0xB5,0x42,0x00,0xDD,0x81,0xE0,0x04,0x9A,0x6F,0x46,
+0x10,0x21,0x01,0x32,0xCF,0x5D,0x92,0x01,0x33,0x1C,0x02,0x92,0x07,0x97,0x05,0xE0,
+0x00,0x27,0x2F,0x54,0x06,0x9F,0x01,0x3B,0x9F,0x42,0x71,0xDC,0x02,0x99,0x9C,0x1C,
+0x0D,0x19,0x2A,0x5C,0x77,0x4E,0x69,0x00,0x89,0x5B,0x0E,0x2A,0xF0,0xD8,0x0D,0x9D,
+0x49,0x1B,0x00,0x2A,0x00,0xD1,0x71,0xE0,0x01,0x3A,0xD4,0xB2,0x09,0x9E,0x04,0x9F,
+0xA2,0x00,0xB5,0x18,0x4F,0x43,0x2E,0x68,0xB4,0x46,0x67,0x44,0x2F,0x60,0x0A,0x9D,
+0x0E,0x1C,0xAF,0x18,0x3D,0x68,0x5E,0x43,0xAC,0x46,0x15,0x19,0x6D,0x00,0x01,0x95,
+0x62,0x4D,0x66,0x44,0xAC,0x46,0x01,0x9D,0x3E,0x60,0xAC,0x44,0x65,0x46,0xAF,0x8F,
+0x38,0x35,0x2E,0x7A,0xCF,0x19,0x03,0x96,0x09,0x26,0xAE,0x57,0xAF,0x80,0x01,0x96,
+0x0C,0x9E,0x6F,0x46,0xB4,0x46,0x01,0x26,0xB4,0x44,0x03,0x9E,0x01,0x36,0x03,0x96,
+0x66,0x46,0xB6,0xB2,0x0C,0x96,0x0C,0x26,0xF7,0x5D,0x04,0x9E,0x2F,0x72,0x01,0x9F,
+0xBE,0x42,0x00,0xDA,0x6E,0x72,0x51,0x4E,0x15,0x19,0x6D,0x00,0x75,0x19,0x38,0x35,
+0x0A,0x26,0xAE,0x57,0x04,0x9F,0xB7,0x42,0x00,0xDD,0xAF,0x72,0x4B,0x4E,0x15,0x19,
+0x6D,0x00,0x75,0x19,0x38,0x35,0x0B,0x26,0xAE,0x57,0xB3,0x42,0x00,0xDA,0xEB,0x72,
+0x15,0x19,0x46,0x4F,0x6D,0x00,0x7D,0x19,0x38,0x35,0x0C,0x26,0xAE,0x57,0xB3,0x42,
+0x00,0xDD,0x2B,0x73,0x12,0x19,0x41,0x4C,0x52,0x00,0xA2,0x18,0x3E,0x25,0x54,0x5F,
+0x38,0x32,0xA1,0x42,0x8E,0xDD,0x06,0x9F,0x01,0x3B,0xD1,0x80,0x9F,0x42,0x8D,0xDD,
+0x04,0x99,0x11,0x9A,0x01,0x39,0x04,0x91,0x91,0x42,0x00,0xDB,0x71,0xE7,0x6B,0x46,
+0x30,0x24,0xE4,0x5A,0x38,0x4B,0x9C,0x81,0x13,0xB0,0xF0,0xBD,0x02,0x39,0xCA,0x43,
+0xD2,0x17,0x11,0x40,0x03,0x91,0x04,0x9E,0x03,0x9F,0x71,0x43,0x5F,0x43,0x0E,0x91,
+0x00,0x25,0xD9,0xB2,0x0F,0x97,0x05,0x91,0x03,0x22,0x01,0x95,0x9C,0x46,0x08,0x94,
+0x31,0x4E,0x32,0x4F,0x07,0x9C,0xB1,0x5C,0x05,0x9D,0xBB,0x5C,0x61,0x18,0xEB,0x18,
+0x49,0xB2,0x01,0x31,0x5B,0xB2,0x89,0x01,0x02,0x33,0xCB,0x18,0x1C,0x5C,0x65,0xB2,
+0x69,0x1E,0x0D,0x29,0x27,0xD8,0x08,0x9B,0x02,0x9F,0x8E,0x00,0xFF,0x18,0x0B,0x97,
+0x09,0x9F,0x71,0x18,0xBB,0x19,0x0A,0x9F,0x49,0x00,0xBF,0x19,0x1B,0x4E,0x00,0x97,
+0x01,0x9F,0x71,0x18,0x38,0x31,0x00,0x2F,0x1A,0xD1,0xE4,0xB2,0x01,0x94,0x0B,0x9D,
+0x0E,0x34,0xE4,0xB2,0x2C,0x54,0x1C,0x68,0x0E,0x9E,0x00,0x9F,0xA4,0x19,0x1C,0x60,
+0x3B,0x68,0x0F,0x9C,0x03,0x9D,0x1B,0x19,0x3B,0x60,0x8C,0x88,0x0B,0x7A,0x2C,0x19,
+0x01,0x33,0x8C,0x80,0x0B,0x72,0x53,0x1E,0x00,0x2A,0x10,0xD0,0xDA,0xB2,0xBF,0xE7,
+0x02,0x9E,0x08,0x99,0x01,0x9C,0x73,0x18,0x1F,0x2C,0xF4,0xD0,0xAC,0x42,0xF2,0xD0,
+0x1F,0x25,0x1F,0x26,0x1D,0x54,0x01,0x96,0x53,0x1E,0x00,0x2A,0xEE,0xD1,0x63,0x46,
+0x18,0xE7,0xC0,0x46,0x44,0x00,0x00,0x20,0x48,0x00,0x00,0x20,0x24,0x02,0x00,0x20,
+0xAE,0x09,0x00,0x20,0xE4,0x10,0x00,0x20,0x70,0x01,0x00,0x20,0x38,0x0D,0x00,0x20,
+0x00,0x20,0x00,0x40,0x00,0x40,0x00,0x40,0xF8,0x59,0x00,0x00,0xF4,0x59,0x00,0x00,
+0xF0,0xB5,0x89,0xB0,0x0F,0x23,0x46,0x49,0xFF,0x22,0x02,0xE0,0x58,0x18,0x01,0x38,
+0x02,0x70,0x01,0x3B,0x00,0x2B,0xF9,0xD1,0x42,0x4B,0xD8,0x68,0x19,0x68,0x9A,0x68,
+0x5B,0x68,0x01,0x90,0x03,0x93,0x40,0x4B,0x02,0x91,0x1B,0x68,0x04,0x93,0x3F,0x4B,
+0x5B,0x7F,0x06,0x93,0x68,0xE0,0x07,0x9B,0x88,0x1C,0x3D,0x4A,0x18,0x18,0x83,0x5C,
+0x5B,0xB2,0x1F,0x2B,0x5A,0xD1,0x3B,0x4A,0x40,0x00,0x82,0x5A,0x04,0x9D,0x04,0x20,
+0x52,0x1B,0x05,0x92,0x38,0x4A,0x01,0x38,0xC0,0xB2,0x14,0x56,0x37,0x4A,0x64,0x44,
+0x12,0x56,0x01,0x34,0x8A,0x18,0xA4,0x01,0x02,0x32,0x31,0x4E,0xA2,0x18,0xB4,0x5C,
+0x0E,0x2C,0x41,0xD8,0x1F,0x2B,0x3E,0xD0,0xA3,0x42,0x3D,0xD0,0x00,0x2C,0x3B,0xD0,
+0x0A,0x27,0x5D,0x1E,0x7D,0x43,0x2E,0x4A,0x2D,0x4E,0x55,0x19,0x62,0x1E,0x7A,0x43,
+0xB2,0x18,0x3E,0x27,0xEE,0x5F,0x3E,0x27,0xD5,0x5F,0x1A,0x1C,0xAE,0x42,0x00,0xDD,
+0x22,0x1C,0x0A,0x25,0x01,0x3A,0x6A,0x43,0x25,0x4E,0x06,0x9D,0xB2,0x18,0x3E,0x27,
+0xD2,0x5F,0x05,0x9E,0x6A,0x43,0x92,0x11,0x96,0x42,0x1D,0xDD,0x9C,0x42,0x02,0xD9,
+0x1A,0x1C,0x23,0x1C,0x14,0x1C,0x5E,0x1E,0x15,0x4A,0xF6,0xB2,0x97,0x5D,0x00,0x25,
+0x00,0x97,0x6F,0x46,0x7D,0x57,0x01,0x3C,0xE4,0xB2,0x6F,0x1C,0x09,0xD0,0xA5,0x42,
+0x03,0xDA,0x6D,0x46,0x2D,0x78,0x15,0x55,0x06,0xE0,0xA5,0x42,0x04,0xDD,0xE4,0xB2,
+0x54,0x55,0x94,0x55,0x00,0xE0,0x23,0x1C,0x00,0x28,0xAB,0xD1,0x01,0x39,0x03,0x9E,
+0xB1,0x42,0x98,0xDA,0x62,0x46,0x01,0x3A,0x01,0x9F,0xBA,0x42,0x05,0xDB,0x53,0x1C,
+0x9B,0x01,0x02,0x99,0x07,0x93,0x94,0x46,0xF1,0xE7,0x09,0xB0,0xF0,0xBD,0xC0,0x46,
+0xEC,0x02,0x00,0x20,0xE4,0x10,0x00,0x20,0x38,0x0D,0x00,0x20,0x48,0x0D,0x00,0x20,
+0x00,0x20,0x00,0x40,0x00,0x40,0x00,0x40,0xF8,0x59,0x00,0x00,0xF4,0x59,0x00,0x00,
+0x24,0x02,0x00,0x20,0xF0,0xB5,0xD4,0x4A,0x8D,0xB0,0x11,0x68,0x00,0x23,0xD0,0x18,
+0xBE,0x30,0x00,0x24,0x00,0x5F,0x0A,0x3B,0x44,0x1E,0xA0,0x41,0x1D,0x1C,0x09,0x18,
+0x8C,0x35,0xF4,0xD1,0xCD,0x4B,0x11,0x60,0x1B,0x68,0xBE,0x32,0x03,0x93,0xCC,0x4B,
+0x0E,0x24,0x1B,0x68,0x05,0x93,0xCB,0x4E,0x01,0x3C,0x33,0x57,0x5F,0x1C,0x01,0xD1,
+0x73,0xE0,0x03,0x1C,0xC7,0x4D,0xE8,0x56,0x46,0x1C,0xFA,0xD1,0x2B,0x55,0x5F,0x1C,
+0x6B,0xD0,0x03,0x98,0x9D,0x00,0x46,0x19,0x37,0x68,0xA0,0x00,0xBC,0x46,0x03,0x9F,
+0x3F,0x58,0xBC,0x44,0x67,0x46,0x37,0x60,0x05,0x9E,0x05,0x9F,0x75,0x19,0x2E,0x68,
+0x38,0x58,0xB9,0x4F,0x30,0x18,0x0A,0x26,0x28,0x60,0x30,0x1C,0x58,0x43,0x38,0x18,
+0x38,0x30,0x09,0x27,0xC7,0x57,0x55,0x79,0xBC,0x46,0x6F,0xB2,0xBC,0x45,0x00,0xDD,
+0x45,0x72,0x5E,0x43,0xB0,0x4D,0x90,0x79,0xAE,0x19,0x38,0x36,0x0A,0x27,0xF7,0x57,
+0x45,0xB2,0xAF,0x42,0x00,0xDA,0xB0,0x72,0xD6,0x79,0xAB,0x4F,0x06,0x96,0x0A,0x26,
+0x30,0x1C,0x58,0x43,0x38,0x18,0x38,0x30,0x0B,0x25,0x45,0x57,0xAC,0x46,0x6D,0x46,
+0x18,0x35,0x2D,0x78,0x6D,0xB2,0xAC,0x45,0x03,0xDD,0x6F,0x46,0x18,0x25,0xEF,0x5D,
+0xC7,0x72,0x5E,0x43,0xA0,0x4D,0x10,0x7A,0xAF,0x19,0x38,0x37,0x0C,0x26,0xBE,0x57,
+0x45,0xB2,0xAE,0x42,0x00,0xDA,0x38,0x73,0x0A,0x20,0x58,0x43,0x56,0x88,0x9A,0x4F,
+0x06,0x96,0x38,0x18,0x3E,0x26,0x85,0x5F,0x18,0x26,0xAC,0x46,0x6D,0x46,0x75,0x5F,
+0x38,0x30,0x0A,0x26,0xAC,0x45,0x03,0xDA,0x6F,0x46,0x18,0x25,0xEF,0x5B,0xC7,0x80,
+0x5E,0x43,0x91,0x48,0x01,0x39,0x87,0x19,0xBB,0x8F,0x10,0x88,0xC3,0x18,0xBB,0x87,
+0x38,0x37,0x10,0x79,0x3B,0x7A,0xC3,0x18,0x3B,0x72,0x0A,0x3A,0x00,0x2C,0x00,0xD0,
+0x81,0xE7,0x89,0x4F,0x26,0x1C,0x3D,0x1C,0x3C,0x35,0x03,0x95,0x39,0x60,0x25,0x1C,
+0x88,0x48,0x00,0x22,0x33,0x18,0x9A,0x56,0x01,0x32,0x19,0xD1,0x1D,0x70,0xB5,0x42,
+0x12,0xD0,0x82,0x4B,0xB1,0x00,0x1A,0x68,0xAB,0x00,0x50,0x58,0xD0,0x50,0x80,0x4A,
+0x7D,0x48,0x12,0x68,0x51,0x58,0xD1,0x50,0x0A,0x22,0x13,0x1C,0x6B,0x43,0xC0,0x18,
+0x3C,0x30,0x03,0x99,0x03,0xF0,0x7E,0xFB,0x3B,0x68,0x01,0x35,0x9D,0x42,0x05,0xDA,
+0x03,0x99,0x01,0x36,0x0A,0x31,0x03,0x91,0x0E,0x2E,0xD9,0xD1,0x76,0x4B,0x1B,0x68,
+0xDA,0x06,0x3B,0xD5,0x75,0x4B,0x1B,0x78,0x00,0x2B,0x03,0xD0,0x04,0x20,0x74,0x49,
+0x01,0xF0,0xD4,0xFE,0x00,0x25,0x73,0x4E,0x2C,0xE0,0x69,0x1C,0x89,0x01,0x33,0x68,
+0x77,0x68,0x71,0x4A,0x03,0x91,0xA4,0x46,0x12,0xE0,0x03,0x9C,0x99,0x1C,0x61,0x18,
+0x88,0x5C,0x40,0xB2,0x44,0x1E,0x0D,0x2C,0x09,0xD8,0x66,0x4C,0x20,0x18,0x01,0x38,
+0x00,0x78,0x40,0xB2,0x44,0x1C,0x02,0xD0,0x01,0x30,0xC0,0xB2,0x88,0x54,0x01,0x3B,
+0xBB,0x42,0xEA,0xDA,0x61,0x4B,0x64,0x46,0x1B,0x78,0x00,0x2B,0x09,0xD0,0x63,0x4B,
+0x63,0x4F,0xAA,0x01,0xD9,0x7D,0xD2,0x19,0x01,0x23,0x04,0x20,0x00,0x93,0x01,0xF0,
+0x4D,0xFE,0x01,0x35,0x5D,0x4F,0x3B,0x7E,0x9D,0x42,0xCE,0xDB,0x5D,0x4B,0x1B,0x68,
+0x00,0x2B,0x10,0xDD,0x5C,0x4B,0x5D,0x4A,0x99,0x89,0x11,0x80,0x1B,0x89,0x53,0x80,
+0x52,0x4B,0x1B,0x78,0x00,0x2B,0x06,0xD0,0x01,0x23,0x02,0x21,0x00,0x93,0x17,0x20,
+0x0B,0x1C,0x01,0xF0,0x33,0xFE,0x48,0x4B,0x55,0x48,0x1D,0x1C,0x40,0xCD,0x4F,0x49,
+0x07,0x96,0x47,0x89,0x08,0x97,0x0A,0x8D,0x47,0x68,0x16,0xB2,0x05,0x96,0x86,0x69,
+0x09,0x97,0xB7,0xB2,0xD2,0x1B,0x04,0x97,0x92,0xB2,0x31,0x31,0x09,0x78,0x0A,0x92,
+0x3E,0x4A,0x00,0x20,0x06,0x91,0x17,0x68,0x03,0x90,0x2F,0xE0,0x03,0x9A,0x0A,0x23,
+0x53,0x43,0x01,0xCF,0x05,0x99,0x48,0x43,0x37,0x49,0xCB,0x18,0x3C,0x22,0x99,0x5E,
+0x09,0x9B,0x59,0x43,0x03,0xF0,0x94,0xFA,0x08,0x99,0x42,0x4A,0x08,0x18,0x13,0x78,
+0x80,0xB2,0x28,0x80,0x00,0x2B,0x15,0xD1,0x00,0xB2,0xB0,0x42,0x07,0xDA,0x06,0x9B,
+0x80,0x1B,0x58,0x43,0x04,0x99,0x80,0x11,0x08,0x18,0x28,0x80,0x0A,0xE0,0x05,0x9A,
+0x10,0x1A,0xB0,0x42,0x06,0xDA,0x06,0x9B,0x80,0x1B,0x58,0x43,0x0A,0x99,0x80,0x11,
+0x08,0x1A,0x28,0x80,0x03,0x9A,0x02,0x35,0x01,0x32,0x03,0x92,0x03,0x9B,0x07,0x98,
+0x83,0x42,0xCB,0xDB,0x20,0x4D,0x2E,0x49,0x2D,0x68,0x28,0x4A,0x05,0x95,0x0E,0x89,
+0x0D,0x68,0x07,0x96,0xD3,0x8C,0x08,0x95,0x4D,0x69,0x1F,0xB2,0xAE,0xB2,0x11,0x1C,
+0x04,0x97,0x06,0x96,0x2F,0x31,0x09,0x78,0x9B,0x1B,0x9B,0xB2,0x09,0x91,0x30,0x32,
+0x12,0x78,0x15,0x4E,0x0B,0x93,0x16,0x4B,0x00,0x20,0x0A,0x92,0x1F,0x68,0x20,0x36,
+0x03,0x90,0x50,0xE0,0x03,0x9A,0x0A,0x23,0x53,0x43,0x01,0xCF,0x04,0x99,0x48,0x43,
+0x0D,0x49,0x5B,0x18,0x3C,0x22,0x99,0x5E,0x08,0x9B,0x59,0x43,0x03,0xF0,0x40,0xFA,
+0x07,0x99,0x18,0x4A,0x08,0x18,0x13,0x78,0x80,0xB2,0x30,0x80,0x00,0x2B,0x36,0xD1,
+0x00,0xB2,0xA8,0x42,0x28,0xDA,0x09,0x9B,0x40,0x1B,0x58,0x43,0x06,0x99,0x80,0x11,
+0x08,0x18,0x30,0x80,0x2B,0xE0,0xC0,0x46,0x24,0x02,0x00,0x20,0x48,0x00,0x00,0x20,
+0x44,0x00,0x00,0x20,0xEC,0x02,0x00,0x20,0x58,0x00,0x00,0x20,0xEB,0x01,0x00,0x20,
+0x64,0x59,0x00,0x00,0xE4,0x10,0x00,0x20,0x00,0x20,0x00,0x40,0xAE,0x09,0x00,0x20,
+0x42,0x20,0x00,0x40,0x9C,0x0D,0x00,0x20,0x70,0x01,0x00,0x20,0x54,0x11,0x00,0x20,
+0x24,0x09,0x00,0x20,0xDF,0x01,0x00,0x20,0x04,0x9A,0x10,0x1A,0xA8,0x42,0x06,0xDA,
+0x0A,0x9B,0x40,0x1B,0x58,0x43,0x0B,0x99,0x80,0x11,0x08,0x1A,0x30,0x80,0x03,0x9A,
+0x02,0x36,0x01,0x32,0x03,0x92,0x03,0x9B,0x05,0x98,0x83,0x42,0xAA,0xDB,0x1B,0x4B,
+0x1A,0x1C,0x2A,0x32,0x17,0x78,0x1A,0x1C,0x2B,0x32,0x12,0x78,0x28,0x21,0x5E,0x5E,
+0x03,0x92,0x26,0x25,0x5A,0x5F,0x2C,0x33,0x04,0x92,0x1B,0x78,0x14,0x49,0x06,0x93,
+0x00,0x25,0xB4,0x46,0x1D,0xE0,0x00,0x26,0x8B,0x5F,0x00,0x2B,0x16,0xD0,0x11,0x4A,
+0xA8,0x18,0x04,0x23,0xC2,0x5E,0x20,0x26,0x83,0x5F,0x00,0x2F,0x01,0xD0,0x66,0x46,
+0xB2,0x1A,0x03,0x9E,0x00,0x2E,0x01,0xD0,0x04,0x9E,0xF3,0x1A,0x06,0x9E,0x00,0x2E,
+0x02,0xD0,0x16,0x1C,0x1A,0x1C,0x33,0x1C,0x82,0x80,0x03,0x84,0x01,0x34,0x0A,0x31,
+0x02,0x35,0x05,0x9E,0xB4,0x42,0xDE,0xDB,0x0D,0xB0,0xF0,0xBD,0xAE,0x09,0x00,0x20,
+0x60,0x02,0x00,0x20,0x24,0x02,0x00,0x20,0x30,0xB5,0x0A,0x4B,0x00,0x21,0x04,0x33,
+0xDB,0x7F,0x09,0x4A,0x0A,0x24,0x08,0x1C,0x07,0xE0,0x01,0x3B,0xDB,0xB2,0x25,0x1C,
+0x5D,0x43,0x55,0x19,0xA9,0x87,0x05,0x4D,0xE8,0x54,0x00,0x2B,0xF5,0xD1,0x13,0x60,
+0x30,0xBD,0xC0,0x46,0xAE,0x09,0x00,0x20,0x9C,0x0D,0x00,0x20,0x64,0x01,0x00,0x20,
+0x00,0xB5,0x08,0x4A,0x01,0x23,0x5B,0x42,0x53,0x60,0x07,0x4B,0x00,0x21,0x11,0x60,
+0x1B,0x78,0x04,0xE0,0x01,0x3B,0xDB,0xB2,0x18,0x1D,0x40,0x00,0x81,0x52,0x00,0x2B,
+0xF8,0xD1,0x00,0xBD,0xE0,0x00,0x00,0x20,0x7C,0x09,0x00,0x20,0x49,0x43,0x40,0x43,
+0x40,0x18,0x70,0x47,0x70,0x47,0xF0,0xB5,0x83,0x4B,0x00,0x22,0x04,0x33,0xD9,0x7F,
+0x87,0xB0,0x0B,0x1C,0x81,0x48,0x0A,0x26,0x15,0x1C,0x07,0xE0,0x01,0x3B,0xDB,0xB2,
+0x34,0x1C,0x5C,0x43,0x04,0x19,0xA2,0x87,0x38,0x34,0x25,0x72,0x04,0x1C,0x00,0x2B,
+0xF4,0xD1,0x7B,0x4B,0x1A,0x68,0x0B,0x1C,0x91,0x42,0x00,0xDD,0x13,0x1C,0x23,0x60,
+0x78,0x48,0x79,0x4A,0x79,0x4B,0x0E,0x24,0xFF,0x21,0x01,0x3C,0xE4,0xB2,0xA5,0x00,
+0x01,0x55,0xAB,0x50,0x00,0x2C,0xF8,0xD1,0x6F,0x4B,0x25,0x1C,0x04,0x33,0xDB,0x7F,
+0x26,0x1C,0x03,0x93,0x72,0x4B,0x1B,0x69,0x04,0x93,0x6D,0x4B,0x1B,0x68,0x05,0x93,
+0x47,0xE0,0x70,0x4C,0x63,0x5D,0x00,0x2B,0x42,0xD0,0x6F,0x4C,0xAB,0x00,0xE3,0x58,
+0x04,0x9C,0x1B,0x01,0x1B,0x19,0x01,0x93,0x6C,0x4B,0x6A,0x00,0x01,0x27,0xD3,0x18,
+0x00,0x24,0x7F,0x42,0x02,0x93,0x20,0xE0,0x0A,0x23,0x63,0x43,0x60,0x48,0xC3,0x18,
+0x3C,0x21,0x5B,0x5E,0x00,0x2B,0x16,0xD0,0x02,0x9A,0x63,0x00,0xC3,0x18,0x98,0x88,
+0x93,0x88,0x5B,0x4A,0xC0,0x1A,0x23,0x1C,0x10,0x33,0x5B,0x00,0x99,0x5A,0x02,0x9A,
+0x00,0xB2,0x13,0x8B,0xC9,0x1A,0x09,0xB2,0xFF,0xF7,0x98,0xFF,0x01,0x9B,0x98,0x42,
+0x01,0xDA,0x27,0x1C,0x01,0x90,0x01,0x34,0xE4,0xB2,0x05,0x98,0x84,0x42,0xDB,0xDB,
+0x79,0x1C,0x0D,0xD0,0x4F,0x4B,0x50,0x49,0xD8,0x57,0xBA,0x00,0x01,0x30,0x04,0xD0,
+0x88,0x58,0x01,0x9C,0xA0,0x42,0x03,0xDD,0x00,0xE0,0x01,0x9C,0x8C,0x50,0xDD,0x55,
+0x01,0x35,0x03,0x9C,0xEB,0xB2,0xA3,0x42,0xB3,0xD3,0x34,0x1C,0x00,0x25,0x44,0x4E,
+0x28,0xE0,0x44,0x48,0x47,0x5D,0x7B,0xB2,0x01,0x33,0x21,0xD0,0x69,0x00,0xFF,0xB2,
+0x3E,0x4B,0x71,0x18,0x89,0x88,0x7A,0x00,0x9A,0x18,0x91,0x80,0x29,0x1C,0x10,0x31,
+0x3A,0x1C,0x49,0x00,0x89,0x5B,0x10,0x32,0x52,0x00,0xD1,0x52,0x0A,0x22,0x10,0x1C,
+0x78,0x43,0x11,0x1C,0x69,0x43,0x1B,0x18,0x18,0x1C,0x71,0x18,0x3C,0x30,0x3C,0x31,
+0x03,0xF0,0x40,0xF9,0x34,0x4B,0xAA,0x00,0xD2,0x58,0x37,0x4B,0xBF,0x00,0xFA,0x50,
+0x01,0x35,0xED,0xB2,0x33,0x68,0x9D,0x42,0xD3,0xDB,0x3D,0xE0,0x2D,0x4E,0x33,0x57,
+0x01,0x33,0x36,0xD1,0x0A,0x23,0x63,0x43,0xEB,0x18,0x3C,0x20,0x1B,0x5E,0x00,0x2B,
+0x2F,0xD0,0x25,0x4B,0x2E,0x4A,0x04,0x33,0xDF,0x7F,0x00,0x23,0x26,0xE0,0x29,0x4E,
+0xF6,0x5C,0x00,0x2E,0x20,0xD1,0x00,0x26,0x90,0x5F,0x00,0x28,0x1C,0xD1,0x21,0x4A,
+0x67,0x00,0x11,0x55,0x1E,0x49,0x1D,0x48,0xCF,0x19,0xBF,0x88,0x5A,0x00,0x82,0x18,
+0x97,0x80,0x27,0x1C,0x10,0x37,0x1A,0x1C,0x7F,0x00,0x7F,0x5A,0x10,0x32,0x52,0x00,
+0x17,0x52,0x0A,0x22,0x53,0x43,0xC0,0x18,0x13,0x1C,0x63,0x43,0xC9,0x18,0x3C,0x31,
+0x3C,0x30,0x03,0xF0,0xFF,0xF8,0x04,0xE0,0x01,0x33,0x0A,0x32,0xD9,0xB2,0xB9,0x42,
+0xD5,0xD3,0x01,0x34,0xE4,0xB2,0x00,0xE0,0x0D,0x4D,0x2B,0x68,0x9C,0x42,0xBD,0xDB,
+0x09,0x4B,0x0C,0x49,0x04,0x33,0xDD,0x7F,0x12,0x4B,0xFF,0x20,0x1C,0x1C,0x0E,0x34,
+0x1A,0x78,0xAA,0x42,0x02,0xD2,0x8A,0x5C,0x1A,0x70,0x00,0xE0,0x18,0x70,0x01,0x33,
+0xA3,0x42,0xF5,0xD1,0x07,0xB0,0xF0,0xBD,0xAE,0x09,0x00,0x20,0x9C,0x0D,0x00,0x20,
+0x24,0x02,0x00,0x20,0xE8,0x03,0x00,0x20,0xF8,0x10,0x00,0x20,0xFF,0xFF,0xFF,0x7F,
+0x24,0x09,0x00,0x20,0xEC,0x01,0x00,0x20,0xF8,0x00,0x00,0x20,0x80,0x09,0x00,0x20,
+0xD8,0x0D,0x00,0x20,0xEC,0x02,0x00,0x20,0xF7,0xB5,0x42,0x4B,0x00,0x21,0x19,0x60,
+0x41,0x4B,0x0A,0x24,0x19,0x60,0x41,0x4B,0x08,0x1C,0x04,0x33,0xDB,0x7F,0x40,0x4D,
+0x1A,0x1C,0xA4,0x46,0x11,0xE0,0x01,0x3A,0xD2,0xB2,0x26,0x1C,0x56,0x43,0xAE,0x19,
+0x38,0x36,0x36,0x7A,0xB0,0x42,0x00,0xDA,0x30,0x1C,0x66,0x46,0x56,0x43,0xAE,0x19,
+0x3C,0x27,0xF6,0x5F,0xB1,0x42,0x00,0xDA,0x31,0x1C,0x00,0x2A,0xEB,0xD1,0x32,0x4A,
+0x50,0x60,0x11,0x60,0x2F,0x4A,0x0A,0x20,0x11,0x68,0x31,0x4A,0x07,0xE0,0x01,0x3B,
+0xDB,0xB2,0x04,0x1C,0x5C,0x43,0x14,0x19,0x38,0x34,0x24,0x7A,0x09,0x19,0x14,0x1C,
+0x00,0x2B,0xF4,0xD1,0x27,0x4B,0x19,0x60,0x13,0x68,0x00,0x2B,0x0F,0xDD,0x26,0x4B,
+0x28,0x4A,0x5B,0x68,0x11,0x80,0x53,0x80,0x27,0x4B,0x1B,0x78,0x00,0x2B,0x06,0xD0,
+0x01,0x23,0x02,0x21,0x00,0x93,0x1D,0x20,0x0B,0x1C,0x01,0xF0,0x8F,0xFB,0x23,0x68,
+0x00,0x2B,0x19,0xDD,0x21,0x4A,0x08,0x23,0xD1,0x5E,0x21,0x4B,0x0C,0x24,0x12,0x5F,
+0x18,0x1C,0x3D,0x33,0x1B,0x78,0x3C,0x30,0x53,0x43,0x00,0x78,0x9B,0x11,0xC3,0x18,
+0x99,0x42,0x09,0xDC,0x18,0x4B,0x1B,0x78,0x00,0x2B,0x03,0xD0,0x00,0x20,0x19,0x49,
+0x01,0xF0,0xCC,0xFB,0xFF,0xF7,0x40,0xFE,0x11,0x4B,0x17,0x4A,0x1B,0x68,0x12,0x78,
+0x93,0x42,0x12,0xDB,0x0B,0x4B,0x12,0x4A,0x18,0x68,0xD1,0x8E,0x0A,0x4B,0x88,0x42,
+0x03,0xDB,0x11,0x8F,0x58,0x68,0x88,0x42,0x03,0xDA,0x52,0x8F,0x5B,0x68,0x93,0x42,
+0x07,0xDB,0x0E,0x4B,0x01,0x22,0x1A,0x70,0x03,0xE0,0x00,0x2B,0x01,0xD1,0x0B,0x4A,
+0x13,0x70,0xF7,0xBD,0x4C,0x11,0x00,0x20,0x0C,0x02,0x00,0x20,0xAE,0x09,0x00,0x20,
+0x9C,0x0D,0x00,0x20,0x54,0x11,0x00,0x20,0xEB,0x01,0x00,0x20,0x70,0x01,0x00,0x20,
+0x48,0x0D,0x00,0x20,0x6C,0x59,0x00,0x00,0x40,0x00,0x00,0x20,0xF5,0x00,0x00,0x20,
+0x38,0xB5,0x04,0x1C,0x08,0x1C,0x00,0x2A,0x07,0xD0,0x54,0x43,0x58,0x43,0xD1,0x18,
+0x20,0x18,0x4D,0x10,0x40,0x19,0x02,0xF0,0xBB,0xFF,0x38,0xBD,0x10,0xB5,0x43,0x1A,
+0xDC,0x17,0x1B,0x19,0x63,0x40,0xFF,0xF7,0xEB,0xFF,0x10,0xBD,0xF0,0xB5,0xA9,0x4B,
+0x00,0x25,0x04,0x33,0x87,0xB0,0xDC,0x7F,0x2E,0x1C,0x46,0xE0,0x01,0x3C,0xE4,0xB2,
+0x0A,0x22,0x62,0x43,0x99,0x18,0x38,0x31,0x88,0x88,0x00,0x28,0x3D,0xD0,0xA2,0x4F,
+0x3F,0x5D,0x00,0x2F,0x2A,0xD1,0xA1,0x49,0x09,0x78,0x00,0x29,0x07,0xD0,0x9A,0x18,
+0x01,0x21,0x3C,0x32,0x1D,0x20,0x02,0x23,0x00,0x91,0x01,0xF0,0x07,0xFB,0x0A,0x20,
+0x60,0x43,0x9B,0x4B,0x9B,0x49,0x18,0x18,0x3C,0x27,0xC2,0x5F,0x38,0x30,0x94,0x46,
+0x26,0x27,0xCA,0x5F,0x1F,0x1C,0x94,0x45,0x08,0xDB,0x4E,0x31,0x0A,0x78,0x96,0x49,
+0x00,0x7A,0x49,0x68,0x4A,0x43,0x92,0x11,0x90,0x42,0x16,0xDA,0x0A,0x22,0x62,0x43,
+0xBA,0x18,0xD5,0x87,0x38,0x32,0x16,0x72,0x95,0x80,0x08,0xE0,0x8D,0x4A,0x00,0xB2,
+0x28,0x27,0xD2,0x5F,0x82,0x42,0x08,0xDD,0xCD,0x80,0x0E,0x72,0x8D,0x80,0x8B,0x4A,
+0xA1,0x00,0x8D,0x50,0x1A,0x68,0x01,0x3A,0x1A,0x60,0x85,0x4B,0x00,0x2C,0xB5,0xD1,
+0x1C,0x60,0x87,0x4B,0x9C,0x73,0x7F,0x4B,0x04,0x33,0xDC,0x7F,0xC7,0xE0,0x01,0x3C,
+0xE4,0xB2,0x0A,0x23,0x63,0x43,0xED,0x18,0xAA,0x8F,0x38,0x35,0x00,0x2A,0x00,0xD1,
+0x93,0xE0,0x7C,0x4B,0x12,0xB2,0x1B,0x8D,0x19,0xB2,0x52,0x1A,0x52,0x10,0x5B,0x00,
+0xD3,0x18,0xAB,0x80,0x7A,0x4B,0x9A,0x7B,0x00,0x2A,0x0D,0xD1,0x79,0x4A,0x12,0x57,
+0x00,0x2A,0x09,0xD1,0x78,0x4A,0x01,0x21,0x11,0x70,0x80,0x22,0xD2,0x05,0x50,0x69,
+0x00,0x0E,0x00,0x06,0x01,0x43,0x51,0x61,0x01,0x22,0x9A,0x73,0x73,0x4E,0x71,0x4B,
+0x1A,0x57,0x33,0x78,0x9A,0x42,0x70,0xDB,0x6F,0x4B,0x1A,0x78,0x00,0x2A,0x01,0xD0,
+0x00,0x22,0x1A,0x70,0x66,0x4D,0x62,0x00,0x2B,0x68,0x01,0x33,0x2B,0x60,0xAB,0x18,
+0x04,0x27,0xD9,0x5F,0x6A,0x4B,0x9A,0x18,0x04,0x26,0x90,0x5F,0x22,0x1C,0x10,0x32,
+0x52,0x00,0x57,0x5F,0x03,0x97,0xD7,0x5E,0x0A,0x1A,0xD3,0x17,0x03,0x9E,0xD2,0x18,
+0x5A,0x40,0xF3,0x1B,0xDE,0x17,0x9B,0x19,0x73,0x40,0xD3,0x18,0x04,0x93,0x59,0x4B,
+0x2E,0x22,0x9E,0x5E,0x04,0x9B,0x32,0x1C,0x05,0x96,0xFF,0xF7,0x39,0xFF,0x05,0x9A,
+0x04,0x9B,0x06,0x1C,0x03,0x99,0x38,0x1C,0xFF,0xF7,0x32,0xFF,0x4D,0x4A,0x13,0x1C,
+0x2D,0x33,0x1B,0x78,0x2A,0x1C,0x5B,0xB2,0x9E,0x42,0x07,0xDD,0x55,0x49,0xC9,0x69,
+0xCF,0x1A,0xBE,0x42,0x03,0xDB,0x4E,0x1E,0xF6,0x1A,0x00,0xE0,0x1E,0x1C,0x45,0x4B,
+0x2E,0x33,0x1B,0x78,0x5B,0xB2,0x98,0x42,0x07,0xDD,0x4E,0x49,0x09,0x6A,0xCF,0x1A,
+0xB8,0x42,0x03,0xDB,0x48,0x1E,0xC0,0x1A,0x00,0xE0,0x18,0x1C,0x63,0x00,0xD3,0x18,
+0x9E,0x80,0x23,0x1C,0x10,0x33,0x5B,0x00,0xE8,0x52,0x0A,0x25,0x65,0x43,0x3D,0x4B,
+0x43,0x4E,0x30,0x20,0x1F,0x5E,0x76,0x19,0x55,0x19,0x3C,0x21,0x70,0x5E,0x3C,0x22,
+0xA9,0x5E,0x3A,0x1C,0xFF,0xF7,0x0A,0xFF,0x38,0x36,0xA8,0x87,0x38,0x35,0x30,0x7A,
+0x29,0x7A,0x3A,0x1C,0xFF,0xF7,0x02,0xFF,0x28,0x72,0x31,0x4B,0x62,0x00,0x99,0x18,
+0x37,0x48,0x89,0x88,0x82,0x18,0x91,0x80,0x22,0x1C,0x10,0x32,0x52,0x00,0xD1,0x5A,
+0x11,0x52,0x0A,0x22,0x11,0x1C,0x61,0x43,0x40,0x18,0x59,0x18,0x0D,0x1C,0x3C,0x30,
+0x3C,0x31,0x02,0xF0,0x07,0xFF,0x3C,0x23,0xEA,0x5E,0x38,0x35,0x29,0x4B,0x00,0x2A,
+0x0C,0xD0,0x24,0x49,0x1A,0x5D,0x32,0x31,0x09,0x78,0x50,0xB2,0x88,0x42,0x06,0xDA,
+0x01,0x32,0x1A,0x55,0x01,0x23,0x5B,0x42,0xAB,0x80,0x00,0xE0,0x1A,0x55,0x1C,0x4D,
+0x00,0x2C,0x00,0xD0,0x33,0xE7,0x22,0x4E,0x29,0x68,0x32,0x68,0x22,0x4B,0x91,0x42,
+0x25,0xDA,0x19,0x68,0x17,0x48,0x01,0x31,0x19,0x60,0x3E,0x30,0x00,0x78,0x40,0xB2,
+0x81,0x42,0x1C,0xDA,0x0F,0x4B,0x2A,0x60,0x04,0x33,0xDC,0x7F,0x14,0xE0,0x01,0x3C,
+0xE4,0xB2,0x63,0x00,0xF2,0x18,0x92,0x88,0xEB,0x18,0x9A,0x80,0x23,0x1C,0x10,0x33,
+0x5B,0x00,0x9A,0x5B,0x5A,0x53,0x0A,0x22,0x11,0x1C,0x61,0x43,0x68,0x18,0x71,0x18,
+0x3C,0x30,0x3C,0x31,0x02,0xF0,0xC6,0xFE,0x00,0x2C,0xE8,0xD1,0x00,0xE0,0x1C,0x60,
+0x07,0xB0,0xF0,0xBD,0xAE,0x09,0x00,0x20,0xEC,0x01,0x00,0x20,0xEB,0x01,0x00,0x20,
+0x9C,0x0D,0x00,0x20,0x48,0x0D,0x00,0x20,0x0C,0x02,0x00,0x20,0xF8,0x00,0x00,0x20,
+0x70,0x01,0x00,0x20,0x3E,0x11,0x00,0x20,0xE2,0x01,0x00,0x20,0x7A,0x0D,0x00,0x20,
+0x20,0x03,0x00,0x20,0x24,0x09,0x00,0x20,0x60,0x01,0x00,0x20,0xF0,0xB5,0x31,0x4B,
+0x31,0x4D,0x1E,0x78,0x31,0x4B,0x00,0x27,0x1A,0x1C,0x2F,0x60,0x2B,0x32,0x12,0x78,
+0x89,0xB0,0x04,0x92,0x50,0x00,0x1A,0x1C,0x06,0x90,0x32,0x32,0x12,0x78,0x07,0x92,
+0x30,0x22,0x99,0x5E,0x6B,0x68,0x05,0x91,0x02,0x93,0x03,0x97,0x42,0xE0,0x01,0x3E,
+0xF6,0xB2,0x33,0x1D,0x5B,0x00,0x01,0x93,0xEB,0x5A,0x00,0x2B,0x34,0xD0,0x04,0x98,
+0x1B,0xB2,0x1B,0x1A,0x06,0x99,0x5B,0x10,0xCB,0x18,0x01,0x9A,0x20,0x48,0x9B,0xB2,
+0xAB,0x52,0xF2,0x00,0x81,0x58,0x84,0x18,0x07,0x98,0x1B,0xB2,0x81,0x42,0x07,0xDA,
+0x1B,0x48,0x01,0x31,0x81,0x50,0x01,0x99,0x00,0x22,0x63,0x60,0x6A,0x52,0x21,0xE0,
+0x60,0x68,0x01,0x37,0x1A,0x1A,0xD1,0x17,0x84,0x46,0x50,0x18,0x05,0x9A,0x48,0x40,
+0x11,0x18,0x00,0x90,0x60,0x46,0x42,0x43,0x94,0x46,0x00,0x9A,0x53,0x43,0x62,0x46,
+0xD0,0x18,0x4B,0x10,0xC0,0x18,0x02,0xF0,0xF3,0xFD,0x01,0x9B,0x03,0x99,0x60,0x60,
+0xE8,0x52,0x81,0x42,0x04,0xDB,0x05,0xE0,0x09,0x48,0xF2,0x00,0x83,0x50,0x01,0xE0,
+0x02,0x96,0x03,0x90,0x00,0x2E,0xBA,0xD1,0x02,0x99,0x09,0xB0,0x2F,0x60,0x69,0x60,
+0xF0,0xBD,0xC0,0x46,0x7C,0x09,0x00,0x20,0xE0,0x00,0x00,0x20,0x48,0x0D,0x00,0x20,
+0x48,0x09,0x00,0x20,0xF7,0xB5,0x27,0x4B,0x27,0x49,0x04,0x33,0xDB,0x7F,0x27,0x4A,
+0x27,0x48,0x42,0xE0,0x01,0x3B,0xDB,0xB2,0x1C,0x1C,0x14,0x34,0x64,0x00,0x04,0x19,
+0x04,0x25,0x64,0x5F,0x00,0x2C,0x27,0xD0,0x0A,0x24,0x5C,0x43,0x0C,0x19,0x3C,0x26,
+0xA4,0x5F,0x00,0x2C,0x20,0xD0,0x5C,0x00,0x0E,0x19,0xB6,0x88,0x05,0x19,0x37,0xB2,
+0xBC,0x46,0x04,0x27,0xEF,0x5F,0x65,0x46,0xED,0x1B,0x6F,0x10,0xBE,0x19,0x14,0x19,
+0xA6,0x80,0x1C,0x1C,0x10,0x34,0x64,0x00,0x0E,0x5B,0x1C,0x1C,0x0C,0x34,0x37,0xB2,
+0x64,0x00,0xBC,0x46,0x25,0x5E,0x67,0x46,0x7F,0x1B,0x7F,0x10,0xBE,0x19,0xA6,0x52,
+0x10,0x4C,0x01,0x26,0xE6,0x54,0x10,0xE0,0x0B,0x4D,0x5C,0x00,0x2E,0x19,0xB6,0x88,
+0x14,0x19,0xA6,0x80,0x1E,0x1C,0x10,0x36,0x1C,0x1C,0x76,0x00,0x76,0x5B,0x0C,0x34,
+0x64,0x00,0x16,0x53,0x07,0x4C,0x00,0x26,0xE6,0x54,0x00,0x2B,0xBA,0xD1,0x0B,0x68,
+0x13,0x60,0xF7,0xBD,0xAE,0x09,0x00,0x20,0x9C,0x0D,0x00,0x20,0x80,0x09,0x00,0x20,
+0x20,0x01,0x00,0x20,0xEC,0x01,0x00,0x20,0xF7,0xB5,0x35,0x4A,0x35,0x4B,0x11,0x1C,
+0x33,0x31,0x34,0x32,0x0E,0x78,0x12,0x78,0x04,0x33,0xDB,0x7F,0x32,0x49,0x01,0x92,
+0xB4,0x46,0x32,0x4A,0x4B,0xE0,0x32,0x48,0x01,0x3B,0xDB,0xB2,0xC4,0x5C,0x01,0x98,
+0x00,0x2C,0x00,0xD1,0x60,0x46,0x5E,0x00,0x8D,0x19,0x96,0x19,0x04,0x27,0xF6,0x5F,
+0xAD,0x88,0x00,0x96,0x00,0x9F,0x2E,0xB2,0xBE,0x1B,0xF7,0x17,0xF6,0x19,0x7E,0x40,
+0x86,0x42,0x10,0xDA,0x1E,0x1C,0x0C,0x36,0x76,0x00,0xB6,0x5E,0x1F,0x1C,0x10,0x37,
+0x00,0x96,0x7F,0x00,0xCF,0x5F,0x00,0x9E,0xF7,0x1B,0xFE,0x17,0xBF,0x19,0x77,0x40,
+0x00,0x97,0x87,0x42,0x18,0xDB,0x58,0x00,0x10,0x18,0x1E,0x1C,0x85,0x80,0x10,0x36,
+0x19,0x4D,0x18,0x1C,0x76,0x00,0x0C,0x30,0x75,0x5B,0x40,0x00,0x15,0x52,0x18,0x1C,
+0x14,0x30,0x40,0x00,0x10,0x18,0x04,0x27,0xC0,0x5F,0x00,0x28,0x04,0xDD,0x00,0x2C,
+0x02,0xD1,0x13,0x48,0x01,0x24,0xC4,0x54,0x0A,0x24,0x5C,0x43,0x0E,0x4D,0x18,0x1C,
+0x2C,0x19,0x14,0x30,0x0D,0x4D,0x40,0x00,0xA4,0x8F,0x28,0x18,0x84,0x80,0x00,0x2B,
+0xB1,0xD1,0x0A,0x68,0x09,0x4B,0x0B,0x49,0x1A,0x60,0x0B,0x4B,0x1A,0x78,0x0B,0x4B,
+0x1A,0x70,0x0B,0x4A,0x0B,0x1C,0x31,0xCA,0x31,0xC3,0xC0,0xCA,0xC0,0xC3,0xF7,0xBD,
+0x48,0x0D,0x00,0x20,0xAE,0x09,0x00,0x20,0x9C,0x0D,0x00,0x20,0x20,0x01,0x00,0x20,
+0x64,0x01,0x00,0x20,0xCC,0x00,0x00,0x20,0xF5,0x00,0x00,0x20,0xF4,0x00,0x00,0x20,
+0xE0,0x00,0x00,0x20,0xF7,0xB5,0x19,0x48,0x01,0x23,0x5B,0x42,0x43,0x60,0x18,0x4B,
+0x1A,0x78,0x18,0x4B,0x19,0x1C,0x2B,0x33,0x1E,0x78,0x2A,0x31,0x0F,0x78,0x00,0x23,
+0xB4,0x46,0x1E,0xE0,0x01,0x3A,0xD2,0xB2,0x13,0x4C,0x51,0x00,0x61,0x5A,0x0E,0xB2,
+0xF6,0x43,0xF6,0x17,0x0E,0x40,0x11,0x1D,0x49,0x00,0xB5,0xB2,0x0E,0x52,0x00,0x2D,
+0x0F,0xD0,0x0E,0x4E,0x2D,0xB2,0x8E,0x5F,0x00,0x2E,0x04,0xDC,0xBD,0x42,0x07,0xDA,
+0x00,0x25,0x0D,0x52,0x05,0xE0,0x65,0x45,0x02,0xDA,0x00,0x26,0x0E,0x52,0x00,0xE0,
+0x01,0x33,0x00,0x2A,0xDE,0xD1,0x01,0x4A,0x13,0x60,0xF7,0xBD,0xE0,0x00,0x00,0x20,
+0x7C,0x09,0x00,0x20,0x48,0x0D,0x00,0x20,0x3C,0x0D,0x00,0x20,0xCC,0x00,0x00,0x20,
+0xEF,0xF3,0x08,0x80,0x70,0x47,0x00,0xBA,0x70,0x47,0x40,0xBA,0x70,0x47,0xC0,0xBA,
+0x70,0x47,0x70,0xB5,0x00,0x28,0x16,0xDA,0xC0,0xB2,0x0F,0x23,0x03,0x40,0x08,0x3B,
+0x12,0x4A,0x9B,0x08,0x9B,0x00,0x9B,0x18,0x03,0x22,0x10,0x40,0x90,0x40,0xFF,0x22,
+0x5D,0x68,0x14,0x1C,0x84,0x40,0x89,0x01,0xA5,0x43,0x0A,0x40,0x82,0x40,0x28,0x1C,
+0x10,0x43,0x58,0x60,0x11,0xE0,0x03,0x24,0x82,0x08,0x09,0x4B,0x20,0x40,0xC0,0x32,
+0xA0,0x40,0x92,0x00,0xFF,0x24,0xD5,0x58,0x26,0x1C,0x86,0x40,0x89,0x01,0xB5,0x43,
+0x0C,0x40,0x84,0x40,0x28,0x1C,0x20,0x43,0xD0,0x50,0x70,0xBD,0x18,0xED,0x00,0xE0,
+0x00,0xE1,0x00,0xE0,0x08,0x4B,0x40,0x22,0x19,0x68,0x7F,0x20,0x49,0x06,0x49,0x0E,
+0x11,0x43,0x1A,0x68,0x82,0x43,0x0A,0x43,0x1A,0x60,0x1A,0x68,0x80,0x23,0xDB,0x05,
+0x19,0x69,0x1A,0x61,0x70,0x47,0xC0,0x46,0x08,0x00,0x00,0x20,0x07,0x4B,0x3F,0x22,
+0x19,0x68,0x7F,0x20,0x11,0x40,0x1A,0x68,0x82,0x43,0x0A,0x43,0x1A,0x60,0x1A,0x68,
+0x80,0x23,0xDB,0x05,0x19,0x69,0x1A,0x61,0x70,0x47,0xC0,0x46,0x08,0x00,0x00,0x20,
+0x07,0x4B,0x08,0x4A,0x19,0x68,0x18,0x68,0x89,0x04,0x89,0x0E,0x09,0x02,0x02,0x40,
+0x0A,0x43,0x1A,0x60,0x1A,0x68,0x80,0x23,0xDB,0x05,0x19,0x69,0x1A,0x61,0x70,0x47,
+0x08,0x00,0x00,0x20,0xFF,0x80,0xFF,0xFF,0x08,0x4B,0x40,0x22,0x19,0x68,0x18,0x68,
+0x49,0x04,0x49,0x0E,0x11,0x43,0x06,0x4A,0x09,0x02,0x02,0x40,0x0A,0x43,0x1A,0x60,
+0x1A,0x68,0x80,0x23,0xDB,0x05,0x19,0x69,0x1A,0x61,0x70,0x47,0x08,0x00,0x00,0x20,
+0xFF,0x80,0xFF,0xFF,0x08,0x4B,0x20,0x22,0x19,0x68,0x7F,0x20,0x49,0x06,0x49,0x0E,
+0x11,0x43,0x1A,0x68,0x82,0x43,0x0A,0x43,0x1A,0x60,0x1A,0x68,0x80,0x23,0xDB,0x05,
+0x19,0x69,0x1A,0x61,0x70,0x47,0xC0,0x46,0x08,0x00,0x00,0x20,0x07,0x4B,0x5F,0x22,
+0x19,0x68,0x7F,0x20,0x11,0x40,0x1A,0x68,0x82,0x43,0x0A,0x43,0x1A,0x60,0x1A,0x68,
+0x80,0x23,0xDB,0x05,0x19,0x69,0x1A,0x61,0x70,0x47,0xC0,0x46,0x08,0x00,0x00,0x20,
+0x07,0x4B,0xBE,0x21,0x1A,0x68,0xC9,0x01,0x18,0x68,0x11,0x40,0x05,0x4A,0x02,0x40,
+0x0A,0x43,0x1A,0x60,0x1A,0x68,0x80,0x23,0xDB,0x05,0x19,0x69,0x1A,0x61,0x70,0x47,
+0x08,0x00,0x00,0x20,0xFF,0x80,0xFF,0xFF,0x08,0x4B,0x20,0x22,0x19,0x68,0x18,0x68,
+0x49,0x04,0x49,0x0E,0x11,0x43,0x06,0x4A,0x09,0x02,0x02,0x40,0x0A,0x43,0x1A,0x60,
+0x1A,0x68,0x80,0x23,0xDB,0x05,0x19,0x69,0x1A,0x61,0x70,0x47,0x08,0x00,0x00,0x20,
+0xFF,0x80,0xFF,0xFF,0x80,0x23,0xDB,0x05,0x18,0x6C,0x80,0x00,0xC0,0x0F,0x70,0x47,
+0x08,0x4B,0x10,0x22,0x19,0x68,0x7F,0x20,0x49,0x06,0x49,0x0E,0x11,0x43,0x1A,0x68,
+0x82,0x43,0x0A,0x43,0x1A,0x60,0x1A,0x68,0x80,0x23,0xDB,0x05,0x19,0x69,0x1A,0x61,
+0x70,0x47,0xC0,0x46,0x08,0x00,0x00,0x20,0x07,0x4B,0x6F,0x22,0x19,0x68,0x7F,0x20,
+0x11,0x40,0x1A,0x68,0x82,0x43,0x0A,0x43,0x1A,0x60,0x1A,0x68,0x80,0x23,0xDB,0x05,
+0x19,0x69,0x1A,0x61,0x70,0x47,0xC0,0x46,0x08,0x00,0x00,0x20,0x00,0xB5,0x0B,0x4B,
+0x19,0x68,0x00,0x28,0x04,0xD0,0x49,0x06,0x49,0x0E,0x10,0x22,0x11,0x43,0x01,0xE0,
+0x6F,0x22,0x11,0x40,0x1A,0x68,0x7F,0x20,0x82,0x43,0x0A,0x43,0x1A,0x60,0x1A,0x68,
+0x80,0x23,0xDB,0x05,0x19,0x69,0x1A,0x61,0x00,0xBD,0xC0,0x46,0x08,0x00,0x00,0x20,
+0x07,0x4B,0xDE,0x21,0x1A,0x68,0xC9,0x01,0x18,0x68,0x11,0x40,0x05,0x4A,0x02,0x40,
+0x0A,0x43,0x1A,0x60,0x1A,0x68,0x80,0x23,0xDB,0x05,0x19,0x69,0x1A,0x61,0x70,0x47,
+0x08,0x00,0x00,0x20,0xFF,0x80,0xFF,0xFF,0x08,0x4B,0x10,0x22,0x19,0x68,0x18,0x68,
+0x49,0x04,0x49,0x0E,0x11,0x43,0x06,0x4A,0x09,0x02,0x02,0x40,0x0A,0x43,0x1A,0x60,
+0x1A,0x68,0x80,0x23,0xDB,0x05,0x19,0x69,0x1A,0x61,0x70,0x47,0x08,0x00,0x00,0x20,
+0xFF,0x80,0xFF,0xFF,0x80,0x23,0xDB,0x05,0x18,0x6C,0xC0,0x00,0xC0,0x0F,0x70,0x47,
+0x08,0x4B,0x01,0x22,0x19,0x68,0x7F,0x20,0x49,0x06,0x49,0x0E,0x11,0x43,0x1A,0x68,
+0x82,0x43,0x0A,0x43,0x1A,0x60,0x1A,0x68,0x80,0x23,0xDB,0x05,0x19,0x69,0x1A,0x61,
+0x70,0x47,0xC0,0x46,0x08,0x00,0x00,0x20,0x07,0x4B,0x7E,0x22,0x19,0x68,0x7F,0x20,
+0x11,0x40,0x1A,0x68,0x82,0x43,0x0A,0x43,0x1A,0x60,0x1A,0x68,0x80,0x23,0xDB,0x05,
+0x19,0x69,0x1A,0x61,0x70,0x47,0xC0,0x46,0x08,0x00,0x00,0x20,0x07,0x4B,0xFC,0x21,
+0x1A,0x68,0xC9,0x01,0x18,0x68,0x11,0x40,0x05,0x4A,0x02,0x40,0x0A,0x43,0x1A,0x60,
+0x1A,0x68,0x80,0x23,0xDB,0x05,0x19,0x69,0x1A,0x61,0x70,0x47,0x08,0x00,0x00,0x20,
+0xFF,0x80,0xFF,0xFF,0x08,0x4B,0x01,0x22,0x19,0x68,0x18,0x68,0x49,0x04,0x49,0x0E,
+0x11,0x43,0x06,0x4A,0x09,0x02,0x02,0x40,0x0A,0x43,0x1A,0x60,0x1A,0x68,0x80,0x23,
+0xDB,0x05,0x19,0x69,0x1A,0x61,0x70,0x47,0x08,0x00,0x00,0x20,0xFF,0x80,0xFF,0xFF,
+0x80,0x23,0xDB,0x05,0x18,0x6C,0xC0,0x01,0xC0,0x0F,0x70,0x47,0x08,0x4B,0x02,0x22,
+0x19,0x68,0x7F,0x20,0x49,0x06,0x49,0x0E,0x11,0x43,0x1A,0x68,0x82,0x43,0x0A,0x43,
+0x1A,0x60,0x1A,0x68,0x80,0x23,0xDB,0x05,0x19,0x69,0x1A,0x61,0x70,0x47,0xC0,0x46,
+0x08,0x00,0x00,0x20,0x07,0x4B,0x7D,0x22,0x19,0x68,0x7F,0x20,0x11,0x40,0x1A,0x68,
+0x82,0x43,0x0A,0x43,0x1A,0x60,0x1A,0x68,0x80,0x23,0xDB,0x05,0x19,0x69,0x1A,0x61,
+0x70,0x47,0xC0,0x46,0x08,0x00,0x00,0x20,0x07,0x4B,0xFA,0x21,0x1A,0x68,0xC9,0x01,
+0x18,0x68,0x11,0x40,0x05,0x4A,0x02,0x40,0x0A,0x43,0x1A,0x60,0x1A,0x68,0x80,0x23,
+0xDB,0x05,0x19,0x69,0x1A,0x61,0x70,0x47,0x08,0x00,0x00,0x20,0xFF,0x80,0xFF,0xFF,
+0x08,0x4B,0x02,0x22,0x19,0x68,0x18,0x68,0x49,0x04,0x49,0x0E,0x11,0x43,0x06,0x4A,
+0x09,0x02,0x02,0x40,0x0A,0x43,0x1A,0x60,0x1A,0x68,0x80,0x23,0xDB,0x05,0x19,0x69,
+0x1A,0x61,0x70,0x47,0x08,0x00,0x00,0x20,0xFF,0x80,0xFF,0xFF,0x80,0x23,0xDB,0x05,
+0x18,0x6C,0x80,0x01,0xC0,0x0F,0x70,0x47,0x08,0x4B,0x04,0x22,0x19,0x68,0x7F,0x20,
+0x49,0x06,0x49,0x0E,0x11,0x43,0x1A,0x68,0x82,0x43,0x0A,0x43,0x1A,0x60,0x1A,0x68,
+0x80,0x23,0xDB,0x05,0x19,0x69,0x1A,0x61,0x70,0x47,0xC0,0x46,0x08,0x00,0x00,0x20,
+0x07,0x4B,0x7B,0x22,0x19,0x68,0x7F,0x20,0x11,0x40,0x1A,0x68,0x82,0x43,0x0A,0x43,
+0x1A,0x60,0x1A,0x68,0x80,0x23,0xDB,0x05,0x19,0x69,0x1A,0x61,0x70,0x47,0xC0,0x46,
+0x08,0x00,0x00,0x20,0x00,0xB5,0x0B,0x4B,0x19,0x68,0x00,0x28,0x04,0xD0,0x49,0x06,
+0x49,0x0E,0x04,0x22,0x11,0x43,0x01,0xE0,0x7B,0x22,0x11,0x40,0x1A,0x68,0x7F,0x20,
+0x82,0x43,0x0A,0x43,0x1A,0x60,0x1A,0x68,0x80,0x23,0xDB,0x05,0x19,0x69,0x1A,0x61,
+0x00,0xBD,0xC0,0x46,0x08,0x00,0x00,0x20,0x07,0x4B,0xF6,0x21,0x1A,0x68,0xC9,0x01,
+0x18,0x68,0x11,0x40,0x05,0x4A,0x02,0x40,0x0A,0x43,0x1A,0x60,0x1A,0x68,0x80,0x23,
+0xDB,0x05,0x19,0x69,0x1A,0x61,0x70,0x47,0x08,0x00,0x00,0x20,0xFF,0x80,0xFF,0xFF,
+0x08,0x4B,0x04,0x22,0x19,0x68,0x18,0x68,0x49,0x04,0x49,0x0E,0x11,0x43,0x06,0x4A,
+0x09,0x02,0x02,0x40,0x0A,0x43,0x1A,0x60,0x1A,0x68,0x80,0x23,0xDB,0x05,0x19,0x69,
+0x1A,0x61,0x70,0x47,0x08,0x00,0x00,0x20,0xFF,0x80,0xFF,0xFF,0x80,0x23,0xDB,0x05,
+0x18,0x6C,0x40,0x01,0xC0,0x0F,0x70,0x47,0x10,0xB5,0x80,0x23,0xDB,0x05,0x04,0x1D,
+0x98,0x69,0x3F,0x22,0x14,0x40,0x90,0x43,0x20,0x43,0x01,0x24,0x98,0x61,0x88,0x1C,
+0x21,0x40,0x41,0x18,0x0A,0x40,0x11,0x02,0x98,0x69,0x02,0x4A,0x02,0x40,0x0A,0x43,
+0x9A,0x61,0x10,0xBD,0xFF,0xC0,0xFF,0xFF,0x06,0x4B,0x7F,0x22,0x19,0x68,0x80,0x23,
+0xDB,0x05,0x18,0x6C,0x01,0x39,0x90,0x43,0x11,0x40,0x02,0x1C,0x0A,0x43,0x1A,0x64,
+0x70,0x47,0xC0,0x46,0x18,0x09,0x00,0x20,0x80,0x23,0xDB,0x05,0x1A,0x6C,0x7F,0x21,
+0x8A,0x43,0x01,0x21,0x0A,0x43,0x1A,0x64,0x70,0x47,0x80,0x23,0xDB,0x05,0xDA,0x69,
+0x0F,0x21,0x8A,0x43,0x02,0x21,0x0A,0x43,0xDA,0x61,0xDA,0x69,0xF0,0x21,0x8A,0x43,
+0x30,0x21,0x0A,0x43,0xDA,0x61,0x0C,0x4A,0x11,0x79,0x01,0x39,0xC9,0xB2,0x59,0x77,
+0xD8,0x69,0x0A,0x49,0x01,0x40,0x80,0x20,0xC0,0x02,0x01,0x43,0xD9,0x61,0xD8,0x69,
+0x07,0x49,0x01,0x40,0xA0,0x20,0xC0,0x03,0x01,0x43,0xD9,0x61,0x92,0x79,0x01,0x3A,
+0xD2,0xB2,0xDA,0x77,0x70,0x47,0xC0,0x46,0x04,0x02,0x00,0x20,0xFF,0xFF,0xF0,0xFF,
+0xFF,0xFF,0x0F,0xFF,0x30,0xB5,0x1A,0x4A,0x1A,0x4B,0x11,0x88,0x1A,0x4C,0xC9,0x18,
+0x80,0x23,0xDB,0x05,0x89,0xB2,0x18,0x8C,0x19,0x84,0x59,0x8C,0x00,0x21,0x59,0x84,
+0x50,0x88,0x16,0x4D,0x01,0x19,0x89,0xB2,0x9A,0x8C,0x99,0x84,0x42,0x1E,0xDC,0x8C,
+0x92,0xB2,0x44,0x19,0xDA,0x84,0xA4,0xB2,0x1D,0x8D,0x1C,0x85,0x10,0x4C,0x00,0x19,
+0x80,0xB2,0x5C,0x8D,0x58,0x85,0x98,0x8D,0x99,0x85,0xD8,0x8D,0xDA,0x85,0x18,0x8E,
+0x19,0x86,0x58,0x8E,0x5A,0x86,0x98,0x8E,0x99,0x86,0xD8,0x8E,0xDA,0x86,0x18,0x8F,
+0x19,0x87,0x58,0x8F,0x5A,0x87,0x98,0x8F,0x99,0x87,0xD9,0x8F,0xDA,0x87,0x30,0xBD,
+0x04,0x02,0x00,0x20,0xFF,0x07,0x00,0x00,0xFF,0x03,0x00,0x00,0xFF,0x05,0x00,0x00,
+0xFF,0x01,0x00,0x00,0x30,0xB5,0x22,0x4B,0xEE,0x24,0x1A,0x68,0xE4,0x01,0x14,0x40,
+0x20,0x48,0x1A,0x68,0x7F,0x21,0x02,0x40,0x22,0x43,0x1A,0x60,0x1C,0x68,0x80,0x22,
+0xD2,0x05,0x15,0x69,0x14,0x61,0x1C,0x4C,0xA4,0x7C,0x00,0x2C,0x16,0xD0,0x1C,0x68,
+0x04,0x25,0x64,0x04,0x64,0x0E,0x2C,0x43,0x1D,0x68,0x0C,0x40,0x24,0x02,0x28,0x40,
+0x20,0x43,0x18,0x60,0x18,0x68,0x14,0x69,0x10,0x61,0x1C,0x68,0x7B,0x20,0x20,0x40,
+0x1C,0x68,0x8C,0x43,0x21,0x1C,0x01,0x43,0x19,0x60,0x15,0xE0,0x1C,0x68,0x04,0x25,
+0x64,0x06,0x64,0x0E,0x2C,0x43,0x1D,0x68,0x0C,0x40,0x8D,0x43,0x29,0x1C,0x21,0x43,
+0x19,0x60,0x19,0x68,0x14,0x69,0x11,0x61,0x1C,0x68,0xF6,0x21,0xC9,0x01,0x21,0x40,
+0x1C,0x68,0x20,0x40,0x08,0x43,0x18,0x60,0x1B,0x68,0x11,0x69,0x13,0x61,0x30,0xBD,
+0x08,0x00,0x00,0x20,0xFF,0x80,0xFF,0xFF,0xAE,0x09,0x00,0x20,0x00,0xB5,0x72,0xB6,
+0x0F,0x4B,0x01,0x22,0x1A,0x70,0x0F,0x4B,0x9A,0x7C,0x0F,0x4B,0x00,0x2A,0x07,0xD0,
+0x1A,0x68,0xF6,0x21,0xC9,0x01,0x11,0x40,0x18,0x68,0x0C,0x4A,0x02,0x40,0x05,0xE0,
+0x19,0x68,0x7B,0x22,0x11,0x40,0x1A,0x68,0x7F,0x20,0x82,0x43,0x0A,0x43,0x1A,0x60,
+0x1A,0x68,0x80,0x23,0xDB,0x05,0x19,0x69,0x1A,0x61,0x62,0xB6,0x00,0xBD,0xC0,0x46,
+0x64,0x00,0x00,0x20,0xAE,0x09,0x00,0x20,0x08,0x00,0x00,0x20,0xFF,0x80,0xFF,0xFF,
+0x00,0xB5,0x72,0xB6,0x10,0x4B,0x00,0x22,0x1A,0x70,0x10,0x4B,0x9A,0x7C,0x10,0x4B,
+0x19,0x68,0x00,0x2A,0x08,0xD0,0x49,0x04,0x04,0x22,0x49,0x0E,0x11,0x43,0x18,0x68,
+0x0C,0x4A,0x09,0x02,0x02,0x40,0x06,0xE0,0x49,0x06,0x04,0x22,0x49,0x0E,0x11,0x43,
+0x1A,0x68,0x7F,0x20,0x82,0x43,0x0A,0x43,0x1A,0x60,0x1A,0x68,0x80,0x23,0xDB,0x05,
+0x19,0x69,0x1A,0x61,0x62,0xB6,0x00,0xBD,0x64,0x00,0x00,0x20,0xAE,0x09,0x00,0x20,
+0x08,0x00,0x00,0x20,0xFF,0x80,0xFF,0xFF,0x01,0x4B,0x18,0x78,0x70,0x47,0xC0,0x46,
+0x64,0x00,0x00,0x20,0x00,0xB5,0x80,0x23,0xDB,0x05,0x19,0x6C,0x80,0x22,0xD2,0x01,
+0x0A,0x43,0x1A,0x64,0x23,0x4A,0x80,0x21,0x10,0x68,0x49,0x00,0x01,0x43,0x11,0x60,
+0x12,0x68,0x99,0x68,0x9A,0x60,0x19,0x6C,0x80,0x22,0x12,0x02,0x0A,0x43,0x1A,0x64,
+0x19,0x6C,0x1D,0x4A,0x0A,0x40,0x1A,0x64,0x1C,0x4B,0x7F,0x22,0x59,0x7B,0x1C,0x4B,
+0x11,0x40,0x18,0x68,0x1B,0x4A,0x09,0x04,0x02,0x40,0x0A,0x43,0x1A,0x60,0x19,0x68,
+0xA0,0x22,0xD2,0x05,0x90,0x68,0x91,0x60,0x18,0x68,0x17,0x49,0x01,0x40,0x84,0x20,
+0xC0,0x05,0x01,0x43,0x19,0x60,0x19,0x68,0x90,0x68,0x91,0x60,0x13,0x49,0x09,0x78,
+0x49,0xB2,0x00,0x29,0x02,0xD0,0x01,0x29,0x0C,0xD1,0x03,0xE0,0x18,0x68,0x10,0x49,
+0x01,0x40,0x03,0xE0,0x18,0x68,0x80,0x21,0x09,0x04,0x01,0x43,0x19,0x60,0x1B,0x68,
+0x91,0x68,0x93,0x60,0x80,0x23,0xDB,0x05,0x19,0x6C,0x0A,0x4A,0x0A,0x40,0x1A,0x64,
+0x00,0xBD,0xC0,0x46,0x14,0x00,0x00,0x20,0xFF,0x7F,0xFF,0xFF,0xAE,0x09,0x00,0x20,
+0x0C,0x00,0x00,0x20,0xFF,0xFF,0x80,0xFF,0xFF,0xFF,0xFF,0x80,0xFA,0x02,0x00,0x20,
+0xFF,0xFF,0x7F,0xFF,0xFF,0xBF,0xFF,0xFF,0x04,0x4B,0x01,0x22,0x1A,0x70,0x80,0x23,
+0xDB,0x05,0x99,0x6C,0x91,0x43,0x99,0x64,0x1A,0x70,0x70,0x47,0x00,0x00,0x00,0x20,
+0x03,0x4A,0x01,0x23,0x13,0x70,0x80,0x22,0xD2,0x05,0x53,0x70,0x70,0x47,0xC0,0x46,
+0x02,0x00,0x00,0x20,0x00,0xB5,0x06,0x4B,0x72,0xB6,0x1A,0x78,0x00,0x2A,0x04,0xD0,
+0xC0,0x46,0xC0,0x46,0x62,0xB6,0x30,0xBF,0xF6,0xE7,0x62,0xB6,0x00,0xBD,0xC0,0x46,
+0x02,0x00,0x00,0x20,0x38,0xB5,0x09,0x4B,0x09,0x49,0x9A,0x78,0x1C,0x79,0x51,0x43,
+0x08,0x4B,0x05,0x1C,0xC9,0x18,0x08,0x48,0x02,0xF0,0x7A,0xF8,0x06,0x4B,0x29,0x1C,
+0x01,0x34,0x58,0x43,0xA1,0x40,0x02,0xF0,0x73,0xF8,0x38,0xBD,0xAA,0x0A,0x00,0x20,
+0x44,0xFE,0xFF,0xFF,0xFE,0x24,0x02,0x00,0x40,0x42,0x0F,0x00,0x05,0x4B,0x19,0x68,
+0x80,0x23,0xDB,0x05,0x5A,0x69,0x09,0x02,0x12,0x0E,0x09,0x0A,0x12,0x06,0x0A,0x43,
+0x5A,0x61,0x70,0x47,0x04,0x00,0x00,0x20,0x01,0x4B,0x18,0x60,0x70,0x47,0xC0,0x46,
+0x04,0x00,0x00,0x20,0x05,0x4B,0x01,0x22,0x1A,0x70,0x80,0x23,0xDB,0x05,0x59,0x69,
+0x80,0x22,0x52,0x04,0x0A,0x43,0x5A,0x61,0x70,0x47,0xC0,0x46,0x01,0x00,0x00,0x20,
+0x00,0xB5,0x05,0x4B,0x72,0xB6,0x1A,0x78,0x00,0x2A,0x03,0xD0,0xC0,0x46,0xC0,0x46,
+0x62,0xB6,0xF7,0xE7,0x62,0xB6,0x00,0xBD,0x00,0x00,0x00,0x20,0x00,0xB5,0x10,0x4B,
+0x1B,0x68,0x9A,0x05,0x0C,0xD5,0x0F,0x4A,0x0F,0x4B,0x72,0xB6,0x11,0x78,0x00,0x29,
+0x02,0xD1,0x19,0x78,0x00,0x29,0x11,0xD0,0xC0,0x46,0xC0,0x46,0x62,0xB6,0xF4,0xE7,
+0x08,0x4A,0x09,0x4B,0x72,0xB6,0x11,0x78,0x00,0x29,0x02,0xD1,0x19,0x78,0x00,0x29,
+0x04,0xD0,0xC0,0x46,0xC0,0x46,0x62,0xB6,0x30,0xBF,0xF3,0xE7,0x62,0xB6,0x00,0xBD,
+0x58,0x00,0x00,0x20,0x01,0x00,0x00,0x20,0x00,0x00,0x00,0x20,0x70,0xB5,0x13,0x49,
+0x13,0x4B,0x04,0x24,0x19,0x60,0x13,0x4B,0x13,0x4D,0x1A,0x68,0x22,0x43,0x1A,0x60,
+0x1A,0x68,0x02,0x24,0xA2,0x43,0x1A,0x60,0x1A,0x68,0x01,0x24,0x22,0x43,0x0F,0x4C,
+0x1A,0x60,0x00,0x22,0x22,0x60,0x0E,0x4A,0x11,0x60,0x2E,0x78,0x2D,0x79,0x70,0x43,
+0x01,0x35,0xE8,0x40,0x09,0x1A,0x11,0x60,0x20,0x68,0x11,0x68,0x88,0x42,0xFB,0xD2,
+0x1A,0x68,0x01,0x21,0x8A,0x43,0x1A,0x60,0x70,0xBD,0xC0,0x46,0xFF,0xFF,0xFF,0x00,
+0x14,0xE0,0x00,0xE0,0x10,0xE0,0x00,0xE0,0xAA,0x0A,0x00,0x20,0x18,0xE0,0x00,0xE0,
+0xFC,0x01,0x00,0x20,0x00,0xB5,0x00,0x23,0x06,0x4A,0x98,0x42,0x02,0xDB,0xD3,0x1C,
+0xDB,0x7F,0x43,0x43,0x02,0x32,0xD2,0x7F,0x01,0x30,0x52,0xB2,0x90,0x40,0x18,0x18,
+0x40,0x18,0x00,0xBD,0xAE,0x09,0x00,0x20,0xF0,0xB5,0x85,0xB0,0x05,0x1C,0x0C,0x1C,
+0x16,0x1C,0x00,0x29,0x05,0xD0,0x2B,0x4B,0x02,0x33,0xDB,0x7F,0x5B,0xB2,0x00,0x2B,
+0x4E,0xD0,0x21,0x1C,0x28,0x1C,0xFF,0xF7,0xDD,0xFF,0x27,0x49,0x27,0x4F,0x4A,0x7A,
+0x09,0x7A,0x13,0x19,0x51,0x18,0x02,0x91,0x41,0x01,0xCF,0x19,0x00,0x22,0x03,0x97,
+0x84,0x46,0x13,0xE0,0x22,0x48,0xC1,0x56,0x58,0x1C,0xC0,0xB2,0xCF,0x0F,0x01,0x90,
+0x7F,0x18,0x03,0x98,0x7F,0x10,0xC7,0x19,0x08,0x37,0x00,0x97,0x6F,0x46,0x38,0x79,
+0x00,0x9F,0x02,0x33,0xB8,0x70,0x01,0x27,0x8F,0x40,0x3A,0x43,0x02,0x98,0x83,0x42,
+0xE8,0xDB,0x15,0x4B,0x60,0x46,0xDF,0x79,0x61,0x42,0x61,0x41,0x5B,0x7C,0x79,0x18,
+0x1C,0x19,0x49,0x10,0x01,0x39,0x01,0x34,0x89,0x06,0x24,0x05,0x0C,0x43,0x22,0x43,
+0x0E,0x49,0x10,0x4C,0x40,0x01,0x43,0x18,0x0F,0x4F,0x01,0x19,0x4C,0x68,0x4A,0x60,
+0xAA,0x1C,0xD2,0xB2,0xC0,0x19,0x02,0x71,0x00,0x2E,0x07,0xD0,0x0B,0x4A,0x01,0x21,
+0x52,0x57,0x91,0x40,0x0A,0x1C,0x99,0x69,0x9A,0x61,0x01,0xE0,0x9A,0x69,0x9E,0x61,
+0x05,0xB0,0xF0,0xBD,0xAE,0x09,0x00,0x20,0x0A,0x03,0x00,0x20,0x00,0x10,0x00,0x40,
+0x10,0x75,0x00,0x00,0x18,0x10,0x00,0x40,0x10,0x10,0x00,0x40,0xEA,0x74,0x00,0x00,
+0x10,0xB5,0x08,0x4B,0x00,0x21,0x1B,0x68,0x01,0x3B,0x08,0xE0,0x06,0x4C,0x58,0x01,
+0x09,0x22,0x00,0x19,0x84,0x18,0xA1,0x72,0x01,0x3A,0xFB,0xD2,0x01,0x3B,0x00,0x2B,
+0xF4,0xDA,0x10,0xBD,0x18,0x09,0x00,0x20,0x00,0x10,0x00,0x40,0x38,0xB5,0xFF,0xF7,
+0xE7,0xFF,0x00,0x21,0x01,0x20,0x0A,0x1C,0x40,0x42,0xFF,0xF7,0x75,0xFF,0x01,0x20,
+0x40,0x42,0x01,0x21,0x00,0x22,0xFF,0xF7,0x6F,0xFF,0x0A,0x4D,0xAC,0x7B,0x0B,0xE0,
+0x20,0x1C,0x00,0x21,0x01,0x22,0xFF,0xF7,0x67,0xFF,0x01,0x21,0x20,0x1C,0x0A,0x1C,
+0xFF,0xF7,0x62,0xFF,0x01,0x34,0xE4,0xB2,0xAA,0x7B,0x2B,0x79,0xD3,0x18,0x9C,0x42,
+0xEE,0xDB,0x38,0xBD,0x0A,0x03,0x00,0x20,0xF0,0xB5,0x85,0xB0,0x05,0x1C,0x0E,0x1C,
+0x02,0x92,0x1F,0x1C,0x00,0x29,0x05,0xD0,0x21,0x4B,0x02,0x33,0xDB,0x7F,0x5B,0xB2,
+0x00,0x2B,0x3B,0xD0,0x31,0x1C,0x28,0x1C,0xFF,0xF7,0x34,0xFF,0x1D,0x4A,0xC0,0xB2,
+0x01,0x90,0x53,0x7A,0x12,0x7A,0xF6,0x18,0x9A,0x18,0x1B,0x4B,0xB9,0x1E,0x1B,0x7C,
+0x48,0x1E,0x81,0x41,0x49,0x42,0xF6,0xB2,0x03,0x91,0x9C,0x46,0x24,0xE0,0x00,0x2F,
+0x07,0xD1,0x26,0x21,0x71,0x43,0x15,0x4B,0x49,0x19,0xCC,0x5C,0x64,0x44,0xE4,0xB2,
+0x08,0xE0,0x01,0x2F,0x04,0xD1,0x73,0x01,0x11,0x49,0x5B,0x19,0x5C,0x5C,0x01,0xE0,
+0x03,0x9B,0x1C,0x40,0x0F,0x4B,0x02,0x99,0x9B,0x57,0x02,0x36,0xD8,0x0F,0xC0,0x18,
+0x63,0x18,0xDB,0xB2,0x00,0x93,0x01,0x9B,0x40,0x10,0x59,0x01,0x6B,0x46,0x08,0x18,
+0x1B,0x78,0x09,0x49,0xF6,0xB2,0x43,0x54,0x96,0x42,0xD8,0xDB,0x05,0xB0,0xF0,0xBD,
+0xAE,0x09,0x00,0x20,0x0A,0x03,0x00,0x20,0x48,0x0D,0x00,0x20,0x36,0x75,0x00,0x00,
+0xB3,0x0A,0x00,0x20,0x10,0x75,0x00,0x00,0x00,0x10,0x00,0x40,0x70,0xB5,0x2A,0x4B,
+0x2A,0x4A,0x19,0x68,0x80,0x24,0x0A,0x40,0x1A,0x60,0x1A,0x68,0xE4,0x05,0x28,0x4D,
+0xA1,0x68,0xA2,0x60,0x69,0x7A,0x03,0x22,0x18,0x68,0x11,0x40,0x25,0x4A,0x89,0x04,
+0x02,0x40,0x0A,0x43,0x1A,0x60,0x1A,0x68,0xA1,0x68,0xA2,0x60,0x19,0x68,0x80,0x22,
+0x52,0x03,0x0A,0x43,0x1A,0x60,0x1A,0x68,0xA1,0x68,0xA2,0x60,0x29,0x7A,0x18,0x68,
+0x07,0x26,0x1D,0x4A,0x31,0x40,0x49,0x05,0x02,0x40,0x0A,0x43,0x1A,0x60,0x1A,0x68,
+0xA1,0x68,0xA2,0x60,0xA9,0x7B,0x0F,0x29,0x25,0xD8,0xEA,0x7B,0x0F,0x2A,0x22,0xD8,
+0x18,0x68,0x09,0x07,0x00,0x01,0x00,0x09,0x01,0x43,0x19,0x60,0x0F,0x21,0x0A,0x40,
+0x18,0x68,0x11,0x06,0x11,0x4A,0x02,0x40,0x0A,0x43,0x1A,0x60,0x1B,0x68,0xA2,0x68,
+0xA3,0x60,0xFF,0xF7,0x49,0xFC,0x0E,0x4A,0x63,0x6C,0x13,0x43,0x63,0x64,0xFF,0xF7,
+0x5C,0xFC,0xFF,0xF7,0x87,0xFC,0xEB,0x79,0x0A,0x4A,0x1E,0x40,0x33,0x02,0x26,0x6C,
+0x16,0x40,0x1E,0x43,0x26,0x64,0x70,0xBD,0x14,0x00,0x00,0x20,0xFF,0xFF,0xFC,0xFF,
+0x48,0x0D,0x00,0x20,0xFF,0xFF,0xF3,0xFF,0xFF,0xFF,0x1F,0xFF,0xFF,0xFF,0xFF,0xF0,
+0xFF,0xFF,0x0F,0x00,0xFF,0xF8,0xFF,0xFF,0x00,0xB5,0x80,0x21,0xC9,0x05,0x0B,0x79,
+0x5A,0x1E,0xD2,0xB2,0x98,0x42,0x09,0xDD,0x00,0xE0,0x0B,0x71,0x01,0x33,0xDB,0xB2,
+0x83,0x42,0xFA,0xDD,0x04,0xE0,0x0A,0x71,0x01,0x3A,0xD2,0xB2,0x82,0x42,0xFA,0xDA,
+0x00,0xBD,0x38,0xB5,0x17,0x4C,0xA0,0x78,0xFF,0xF7,0xE6,0xFF,0x80,0x23,0xDB,0x05,
+0x21,0x79,0x5A,0x68,0xC9,0x07,0x52,0x00,0x52,0x08,0x0A,0x43,0x5A,0x60,0x60,0x79,
+0x03,0x22,0x5D,0x68,0x10,0x49,0x10,0x40,0x80,0x03,0x29,0x40,0x01,0x43,0x59,0x60,
+0xA0,0x79,0x0E,0x49,0x5D,0x68,0x10,0x40,0x00,0x03,0x29,0x40,0x01,0x43,0x59,0x60,
+0xE0,0x79,0x0B,0x49,0x5D,0x68,0x10,0x40,0x29,0x40,0x80,0x02,0x01,0x43,0x59,0x60,
+0x21,0x7A,0x58,0x68,0x0A,0x40,0x11,0x02,0x06,0x4A,0x02,0x40,0x0A,0x43,0x5A,0x60,
+0x38,0xBD,0xC0,0x46,0xAA,0x0A,0x00,0x20,0xFF,0x3F,0xFF,0xFF,0xFF,0xCF,0xFF,0xFF,
+0xFF,0xF3,0xFF,0xFF,0xFF,0xFC,0xFF,0xFF,0xF8,0xB5,0x80,0x23,0xDB,0x05,0x1A,0x68,
+0x7A,0x4A,0x00,0x21,0x08,0x20,0x19,0x60,0x10,0x60,0x14,0x68,0x9D,0x68,0x9C,0x60,
+0x77,0x4C,0x21,0x60,0x24,0x68,0xDD,0x68,0xDC,0x60,0xFE,0x25,0x75,0x4C,0xED,0x01,
+0x25,0x60,0x24,0x68,0x1D,0x69,0x1C,0x61,0x5C,0x69,0x59,0x61,0x9C,0x69,0x99,0x61,
+0xDC,0x69,0xD9,0x61,0x1C,0x6C,0x80,0x24,0xE4,0x01,0x1C,0x64,0x5C,0x6C,0x59,0x64,
+0x9C,0x6C,0x6D,0x4C,0x99,0x64,0x21,0x60,0xA0,0x24,0xE4,0x05,0xA5,0x68,0xA1,0x60,
+0x1C,0x6C,0x6A,0x49,0x21,0x40,0x19,0x64,0x1C,0x68,0x80,0x21,0x49,0x05,0x21,0x43,
+0x19,0x60,0x67,0x49,0x01,0x31,0xC9,0x7F,0x00,0x29,0x03,0xD0,0x11,0x68,0x08,0x43,
+0x10,0x60,0x02,0xE0,0x11,0x68,0x81,0x43,0x11,0x60,0x11,0x68,0x98,0x68,0x99,0x60,
+0x13,0x68,0x04,0x26,0x33,0x43,0x13,0x60,0x13,0x68,0x80,0x25,0xED,0x05,0xA9,0x68,
+0xAB,0x60,0x13,0x68,0x02,0x27,0x3B,0x43,0x13,0x60,0x13,0x68,0xA9,0x68,0xAB,0x60,
+0x13,0x68,0x01,0x20,0x83,0x43,0x13,0x60,0x13,0x68,0xAA,0x68,0xAB,0x60,0xFF,0xF7,
+0xED,0xFE,0x54,0x4B,0x1C,0x22,0x9A,0x56,0xA9,0x69,0x53,0x4B,0x12,0x05,0xF2,0x40,
+0x0B,0x40,0x13,0x43,0xAB,0x61,0xFF,0xF7,0x61,0xFE,0x50,0x4A,0x50,0x4B,0x01,0x21,
+0x1A,0x60,0x50,0x4B,0x08,0x24,0x1A,0x68,0x10,0x20,0x32,0x43,0x1A,0x60,0x1A,0x68,
+0xBA,0x43,0x1A,0x60,0x4C,0x4B,0xC0,0x22,0x52,0x00,0x99,0x50,0x20,0x21,0x9F,0x50,
+0x9E,0x50,0x9C,0x50,0x98,0x50,0x99,0x50,0x40,0x21,0x99,0x50,0xC0,0x22,0xBA,0x40,
+0x98,0x58,0xFF,0x24,0xA0,0x43,0xC0,0x24,0x20,0x43,0x98,0x50,0x9C,0x58,0x43,0x48,
+0x04,0x40,0x9C,0x50,0x9C,0x58,0x42,0x48,0x20,0x40,0x80,0x24,0x24,0x04,0x04,0x43,
+0x9C,0x50,0x9C,0x58,0x24,0x02,0x24,0x0A,0x2C,0x43,0x9C,0x50,0xC1,0x22,0xBA,0x40,
+0x98,0x58,0x04,0x1C,0xFF,0x20,0x84,0x43,0x0C,0x43,0x9C,0x50,0x9C,0x58,0x37,0x48,
+0x20,0x40,0x80,0x24,0x24,0x02,0x20,0x43,0x98,0x50,0x98,0x58,0x34,0x4C,0x20,0x40,
+0x98,0x50,0x34,0x4A,0x10,0x69,0x30,0x43,0x10,0x61,0x62,0xB6,0x08,0x22,0x01,0x20,
+0x1E,0x60,0x18,0x60,0x1F,0x60,0x1A,0x60,0x2F,0x4B,0x20,0x20,0x10,0x24,0xDC,0x67,
+0xD8,0x67,0xD9,0x67,0xFF,0xF7,0x46,0xFC,0x21,0x4C,0xE0,0x7D,0x21,0x7E,0xFF,0xF7,
+0xFB,0xFA,0xE3,0x7C,0x00,0x2B,0x26,0xD0,0x1A,0x4B,0x01,0x21,0x18,0x68,0x27,0x4A,
+0x40,0x00,0x40,0x0E,0x08,0x43,0x19,0x68,0x00,0x06,0x11,0x40,0x01,0x43,0x19,0x60,
+0x19,0x68,0x28,0x69,0x29,0x61,0x19,0x68,0x49,0x00,0x49,0x0E,0x0F,0x43,0x39,0x06,
+0x1F,0x68,0x17,0x40,0x0F,0x43,0x1F,0x60,0x19,0x68,0x28,0x69,0x29,0x61,0x19,0x68,
+0x49,0x00,0x49,0x0E,0x0E,0x43,0x19,0x68,0x36,0x06,0x0A,0x40,0x32,0x43,0x1A,0x60,
+0x1B,0x68,0x2A,0x69,0x2B,0x61,0xFF,0xF7,0xD4,0xFE,0xFF,0xF7,0xC1,0xF8,0xFF,0xF7,
+0x0F,0xF9,0xFF,0xF7,0x7D,0xF9,0xFF,0xF7,0x65,0xFB,0xF8,0xBD,0x14,0x00,0x00,0x20,
+0x10,0x00,0x00,0x20,0x08,0x00,0x00,0x20,0x0C,0x00,0x00,0x20,0xFF,0xFF,0x7F,0xFF,
+0xAE,0x09,0x00,0x20,0x48,0x0D,0x00,0x20,0xFF,0xFF,0x00,0xF0,0xFF,0xFF,0xFF,0x00,
+0x14,0xE0,0x00,0xE0,0x10,0xE0,0x00,0xE0,0x00,0xE1,0x00,0xE0,0xFF,0x00,0xFF,0xFF,
+0xFF,0xFF,0x00,0xFF,0x00,0xED,0x00,0xE0,0x04,0xE1,0x00,0xE0,0xFF,0xFF,0xFF,0x80,
+0x08,0xB5,0x0C,0x4A,0x0C,0x4B,0x0D,0x49,0x01,0xE0,0x01,0xCA,0x01,0xC3,0x8B,0x42,
+0xFB,0xD3,0x0B,0x4B,0x0B,0x49,0x00,0x22,0x00,0xE0,0x04,0xC3,0x8B,0x42,0xFC,0xD3,
+0xFF,0xF7,0x26,0xF8,0x08,0x4B,0x00,0x22,0x00,0xE0,0x04,0xC3,0x83,0x42,0xFC,0xD3,
+0x08,0xBD,0xC0,0x46,0xFC,0x59,0x00,0x00,0x3C,0x00,0x00,0x20,0x5C,0x00,0x00,0x20,
+0x5C,0x00,0x00,0x20,0xEC,0x11,0x00,0x20,0x0C,0x1E,0x00,0x20,0x00,0xB5,0x13,0x4B,
+0x1B,0x68,0x01,0x2B,0x02,0xD0,0x08,0x2B,0x1E,0xD1,0x0F,0xE0,0x10,0x4B,0x11,0x4A,
+0x1A,0x60,0x11,0x4A,0x5A,0x60,0x11,0x4A,0x11,0x4B,0x1A,0x60,0x11,0x4B,0x12,0x4A,
+0x1A,0x60,0x12,0x4A,0x5A,0x60,0x12,0x4A,0x9A,0x60,0x0D,0xE0,0x09,0x4B,0x08,0x4A,
+0x09,0x49,0x13,0x60,0x51,0x60,0x0A,0x4A,0x13,0x60,0x0A,0x4A,0x13,0x60,0x53,0x60,
+0x93,0x60,0x0C,0x4B,0x01,0x22,0x1A,0x70,0x00,0xBD,0xC0,0x46,0x50,0x11,0x00,0x20,
+0x68,0x00,0x00,0x20,0xF9,0x03,0x00,0x00,0x7D,0x3F,0x00,0x00,0xB5,0x3F,0x00,0x00,
+0x00,0x02,0x00,0x20,0x18,0x00,0x00,0x20,0xC1,0x40,0x00,0x00,0xA9,0x42,0x00,0x00,
+0x0D,0x44,0x00,0x00,0xE4,0x01,0x00,0x20,0x00,0xB5,0x00,0x23,0xC2,0x5C,0x01,0x33,
+0x00,0x2A,0xFB,0xD1,0x01,0x3B,0xD8,0xB2,0x00,0xBD,0xC0,0x46,0xF7,0xB5,0x1C,0x1C,
+0x08,0xAB,0x1F,0x78,0x26,0x4B,0x0E,0x1C,0x1B,0x68,0x01,0x21,0x81,0x40,0x0B,0x42,
+0x44,0xD0,0x00,0x2F,0x07,0xD0,0x04,0x2C,0x32,0xD8,0x22,0x4B,0x19,0x5D,0x05,0x33,
+0x00,0x91,0x1F,0x5D,0x08,0xE0,0x04,0x2C,0x2E,0xD8,0x1E,0x4B,0x19,0x1C,0x0A,0x31,
+0x09,0x5D,0x0F,0x33,0x1F,0x5D,0x00,0x91,0x03,0x2C,0x28,0xD0,0x00,0x2C,0x28,0xD0,
+0x28,0xE0,0x3A,0x20,0x21,0x1C,0x01,0xF0,0x63,0xFC,0x86,0x42,0x05,0xDD,0x6B,0x46,
+0x1B,0x78,0xC0,0xB2,0x2B,0x70,0x68,0x70,0x02,0xE0,0x2F,0x70,0x30,0x1C,0x6E,0x70,
+0x36,0x1A,0x60,0x43,0x01,0x99,0x00,0x23,0x69,0x60,0xAB,0x60,0x09,0x18,0xF6,0xB2,
+0x01,0x91,0xFF,0xF7,0xE3,0xFA,0xFF,0xF7,0x37,0xFB,0x00,0x28,0xFB,0xD1,0x0B,0xE0,
+0x0F,0x23,0x00,0x27,0x00,0x93,0x05,0xE0,0x0F,0x21,0x00,0x91,0x02,0xE0,0x02,0x24,
+0x00,0xE0,0x01,0x24,0x04,0x4D,0x01,0x92,0x00,0x2E,0xD2,0xD1,0xF7,0xBD,0xC0,0x46,
+0x58,0x00,0x00,0x20,0x73,0x59,0x00,0x00,0x70,0x00,0x00,0x20,0x38,0xB5,0x11,0x4B,
+0x01,0x22,0x1B,0x68,0x82,0x40,0x0D,0x1C,0x13,0x42,0x19,0xD0,0x0E,0x4C,0x0B,0x23,
+0x23,0x70,0x08,0x1C,0xFF,0xF7,0x90,0xFF,0x60,0x70,0x63,0x78,0x07,0x22,0x02,0x33,
+0x13,0x40,0x93,0x42,0x03,0xD1,0x63,0x78,0x01,0x3B,0xDB,0xB2,0x63,0x70,0x00,0x23,
+0x65,0x60,0xA3,0x60,0xFF,0xF7,0xAA,0xFA,0xFF,0xF7,0xFE,0xFA,0x00,0x28,0xFB,0xD1,
+0x38,0xBD,0xC0,0x46,0x58,0x00,0x00,0x20,0x70,0x00,0x00,0x20,0x1F,0xB5,0x0B,0x4C,
+0x6B,0x46,0xD8,0x73,0x23,0x78,0x00,0x2B,0x03,0xD0,0x00,0x20,0x08,0x49,0xFF,0xF7,
+0xCD,0xFF,0x23,0x78,0x00,0x2B,0x07,0xD0,0x6A,0x46,0x01,0x21,0x00,0x20,0x0F,0x32,
+0x04,0x23,0x00,0x91,0xFF,0xF7,0x6A,0xFF,0x1F,0xBD,0xC0,0x46,0xEB,0x01,0x00,0x20,
+0x87,0x59,0x00,0x00,0xF8,0xB5,0xFF,0xF7,0xD7,0xFA,0x00,0x28,0x70,0xD1,0x39,0x4B,
+0x1A,0x68,0x00,0x2A,0x03,0xDC,0x38,0x4B,0x1B,0x68,0x00,0x2B,0x3E,0xDD,0x37,0x49,
+0x03,0x23,0x0B,0x70,0x36,0x4B,0x04,0x33,0xDB,0x7F,0x1C,0x1C,0x9A,0x42,0x00,0xDA,
+0xD3,0xB2,0x4B,0x70,0x0A,0x21,0x8C,0x46,0x32,0x4A,0x00,0x23,0x2D,0x49,0x1F,0xE0,
+0x01,0x33,0x03,0xE0,0x66,0x46,0x5E,0x43,0x00,0x20,0x76,0x18,0x0A,0x30,0x37,0x18,
+0x32,0x25,0x7F,0x5F,0x00,0x2F,0xF3,0xD0,0xA3,0x42,0x13,0xDA,0x58,0x00,0x08,0x18,
+0x80,0x88,0xDE,0x00,0x10,0x70,0x00,0xB2,0x00,0x12,0x80,0x19,0x50,0x70,0x18,0x1C,
+0x10,0x30,0x40,0x00,0x08,0x5A,0x01,0x33,0x90,0x70,0x00,0x0A,0xD0,0x70,0x04,0x32,
+0xA3,0x42,0xDF,0xDB,0x1D,0x4B,0x1F,0x4A,0x5A,0x60,0x00,0x22,0x9A,0x60,0xFF,0xF7,
+0x3D,0xFA,0xFF,0xF7,0x91,0xFA,0x00,0x28,0xFB,0xD1,0x29,0xE0,0x1A,0x4A,0x53,0x68,
+0x01,0x33,0x25,0xD0,0x15,0x4B,0x13,0x21,0x19,0x70,0x11,0x68,0x94,0x46,0x59,0x70,
+0x16,0x4B,0x14,0x49,0x1D,0x78,0x03,0x1C,0x0D,0xE0,0x23,0x1C,0x01,0xE0,0x5E,0x00,
+0x66,0x44,0x02,0x30,0x34,0x18,0x06,0x22,0xA7,0x5E,0x5C,0x1C,0x00,0x2F,0xF4,0xD0,
+0x0B,0x70,0x23,0x1C,0x01,0x31,0x00,0x20,0xAB,0x42,0xF0,0xDB,0x07,0x4B,0x09,0x4A,
+0x98,0x60,0x5A,0x60,0xFF,0xF7,0x12,0xFA,0xFF,0xF7,0x66,0xFA,0x00,0x28,0xFB,0xD1,
+0xF8,0xBD,0xC0,0x46,0x9C,0x0D,0x00,0x20,0x20,0x01,0x00,0x20,0x70,0x00,0x00,0x20,
+0xAE,0x09,0x00,0x20,0xF0,0x09,0x00,0x20,0xE0,0x00,0x00,0x20,0x7C,0x09,0x00,0x20,
+0x08,0xB5,0x64,0x4B,0x1B,0x88,0x1D,0x2B,0x47,0xD0,0x1A,0xD8,0x05,0x2B,0x00,0xD1,
+0x96,0xE0,0x0D,0xD8,0x02,0x2B,0x63,0xD0,0x03,0xD8,0x01,0x2B,0x00,0xD0,0xB7,0xE0,
+0x57,0xE0,0x03,0x2B,0x00,0xD1,0x87,0xE0,0x04,0x2B,0x00,0xD0,0xB0,0xE0,0x8F,0xE0,
+0x07,0x2B,0x65,0xD0,0x5C,0xD3,0x1B,0x2B,0x1C,0xD0,0x1C,0x2B,0x00,0xD0,0xA7,0xE0,
+0x22,0xE0,0x22,0x2B,0x40,0xD0,0x08,0xD8,0x1F,0x2B,0x5D,0xD0,0x2A,0xD3,0x20,0x2B,
+0x5E,0xD0,0x21,0x2B,0x00,0xD0,0x9B,0xE0,0x5E,0xE0,0x41,0x2B,0x64,0xD0,0x03,0xD8,
+0x40,0x2B,0x00,0xD0,0x94,0xE0,0x5B,0xE0,0x42,0x2B,0x61,0xD0,0x60,0x2B,0x00,0xD0,
+0x8E,0xE0,0x72,0xE0,0x48,0x4A,0x49,0x4B,0x12,0x78,0x01,0x20,0x19,0x68,0x90,0x40,
+0x02,0x1C,0x0A,0x43,0x1A,0x60,0x83,0xE0,0x43,0x49,0x44,0x4B,0x09,0x78,0x1A,0x68,
+0x01,0x20,0x88,0x40,0x82,0x43,0x1A,0x60,0x7A,0xE0,0x3F,0x4B,0x1A,0x78,0x40,0x4B,
+0x1A,0x70,0x75,0xE0,0x3C,0x4B,0x0D,0x21,0x1A,0x78,0x3E,0x4B,0x1A,0x70,0x3C,0x4A,
+0x11,0x70,0x1A,0x78,0x3C,0x4B,0x00,0x2A,0x02,0xD0,0x00,0x22,0x5A,0x70,0x67,0xE0,
+0x3A,0x4A,0x52,0x78,0x5A,0x70,0x63,0xE0,0x33,0x4B,0x1A,0x78,0x38,0x4B,0x1A,0x70,
+0x5E,0xE0,0x31,0x4B,0x1A,0x78,0x37,0x4B,0x1A,0x60,0xFD,0xF7,0x09,0xFC,0x57,0xE0,
+0x2D,0x4B,0x1A,0x78,0x34,0x4B,0x9A,0x70,0x98,0x78,0xFF,0xF7,0x8D,0xFC,0x4F,0xE0,
+0x29,0x4B,0x1A,0x78,0x30,0x4B,0x9A,0x70,0x29,0x4B,0x0F,0x22,0x1A,0x70,0x47,0xE0,
+0x2E,0x4B,0x01,0x22,0x1A,0x70,0x43,0xE0,0x2D,0x4B,0x01,0x22,0x1A,0x70,0x3F,0xE0,
+0x0C,0x20,0xFD,0xF7,0x85,0xF9,0x3B,0xE0,0x0D,0x20,0xFD,0xF7,0x81,0xF9,0x37,0xE0,
+0x28,0x4B,0x01,0x22,0x1A,0x70,0x33,0xE0,0x27,0x4B,0x01,0x22,0x1A,0x70,0x2F,0xE0,
+0x26,0x4B,0x01,0x22,0x1A,0x70,0x2B,0xE0,0x25,0x4B,0x01,0x22,0x1A,0x70,0x27,0xE0,
+0x24,0x4B,0x01,0x22,0x1A,0x70,0x14,0x4B,0x1A,0x78,0x23,0x4B,0x1A,0x70,0x1F,0xE0,
+0x11,0x4B,0x1A,0x78,0x1E,0x4B,0x9A,0x70,0x1A,0xE0,0x0F,0x4B,0x1A,0x78,0x1F,0x4B,
+0x1A,0x70,0x1A,0x78,0x10,0x4B,0x01,0x3A,0x01,0x2A,0x03,0xD8,0x40,0x33,0x0F,0x22,
+0x1A,0x70,0x0D,0xE0,0x1A,0x4A,0x40,0x33,0x12,0x78,0x00,0x2A,0x04,0xD0,0x19,0x4A,
+0x40,0x32,0x12,0x78,0x1A,0x70,0x03,0xE0,0x08,0x4A,0x40,0x32,0x12,0x78,0x1A,0x70,
+0x08,0xBD,0xC0,0x46,0x28,0x00,0x00,0x20,0x0C,0x00,0x00,0x50,0x58,0x00,0x00,0x20,
+0x1D,0x03,0x00,0x20,0xE3,0x01,0x00,0x20,0x48,0x0D,0x00,0x20,0x4A,0x74,0x00,0x00,
+0xDE,0x01,0x00,0x20,0x50,0x11,0x00,0x20,0xAA,0x0A,0x00,0x20,0xE4,0x01,0x00,0x20,
+0xDC,0x01,0x00,0x20,0xE8,0x01,0x00,0x20,0xE7,0x01,0x00,0x20,0xE5,0x01,0x00,0x20,
+0x8B,0x01,0x00,0x20,0xE6,0x01,0x00,0x20,0x92,0x01,0x00,0x20,0xE0,0x01,0x00,0x20,
+0xDD,0x01,0x00,0x20,0x9A,0x74,0x00,0x00,0x30,0xB5,0x4A,0x4B,0x1B,0x88,0x34,0x2B,
+0x47,0xD0,0x0C,0xD8,0x2E,0x2B,0x4F,0xD0,0x04,0xD8,0x00,0x2B,0x14,0xD0,0x1D,0x2B,
+0x78,0xD1,0x16,0xE0,0x2F,0x2B,0x51,0xD0,0x30,0x2B,0x73,0xD1,0x56,0xE0,0x38,0x2B,
+0x66,0xD0,0x04,0xD8,0x35,0x2B,0x39,0xD0,0x37,0x2B,0x6B,0xD1,0x5B,0xE0,0x39,0x2B,
+0x63,0xD0,0x86,0x2B,0x66,0xD1,0x09,0xE0,0x3B,0x4B,0x5A,0x7B,0x3B,0x4B,0x1A,0x70,
+0x6F,0xE0,0x3B,0x4B,0x1A,0x78,0x39,0x4B,0x1A,0x70,0x6A,0xE0,0x39,0x49,0x3A,0x4A,
+0x0B,0x78,0x00,0x2B,0x0F,0xD1,0x10,0x78,0x34,0x49,0x08,0x70,0x50,0x78,0x37,0x49,
+0x08,0x70,0x52,0x68,0xD1,0x18,0x36,0x4C,0x08,0x78,0x19,0x19,0x01,0x33,0x08,0x70,
+0x06,0x2B,0xF7,0xD1,0x55,0xE0,0x52,0x68,0x00,0x23,0x08,0x78,0x2B,0x4D,0xC0,0x18,
+0x02,0x38,0x10,0x18,0x04,0x78,0x58,0x19,0x01,0x33,0x04,0x70,0x08,0x2B,0xF4,0xD1,
+0x47,0xE0,0x2C,0x4B,0x1A,0x68,0x25,0x4B,0x1A,0x60,0x42,0xE0,0x80,0x23,0xDB,0x05,
+0x1A,0x79,0x22,0x4B,0x1A,0x70,0x3C,0xE0,0x22,0x4B,0x27,0x4A,0x1B,0x78,0x1F,0x49,
+0xD3,0x18,0x1A,0x68,0x5B,0x68,0x0A,0x60,0x4B,0x60,0x32,0xE0,0x1A,0x4B,0x1A,0x1C,
+0x2C,0x32,0x11,0x78,0x19,0x4A,0x00,0x29,0x07,0xD1,0x09,0xE0,0x16,0x4B,0x1A,0x1C,
+0x2C,0x32,0x11,0x78,0x15,0x4A,0x00,0x29,0x02,0xD1,0xDB,0x8C,0x13,0x80,0x20,0xE0,
+0x1B,0x8D,0x13,0x80,0x1D,0xE0,0x19,0x4B,0x1A,0x78,0x10,0x4B,0x1A,0x70,0x18,0xE0,
+0x17,0x4B,0x1A,0x78,0x0D,0x4B,0x1A,0x70,0x13,0xE0,0x16,0x4B,0x1A,0x78,0x0B,0x4B,
+0x1A,0x70,0x0E,0xE0,0x90,0x3B,0x9A,0xB2,0x13,0x2A,0x0A,0xD8,0x09,0x4A,0x5B,0x01,
+0x12,0x78,0x06,0x49,0x9B,0x18,0x10,0x4A,0x9B,0x18,0x1A,0x68,0x5B,0x68,0x0A,0x60,
+0x4B,0x60,0x30,0xBD,0x28,0x00,0x00,0x20,0xAE,0x09,0x00,0x20,0x0C,0x00,0x00,0x50,
+0x1D,0x03,0x00,0x20,0x2A,0x00,0x00,0x20,0x70,0x00,0x00,0x20,0x0D,0x00,0x00,0x50,
+0x0E,0x00,0x00,0x50,0x1C,0x09,0x00,0x20,0xB1,0x09,0x00,0x20,0xFF,0x5B,0x00,0x00,
+0xFF,0x73,0x00,0x00,0xFF,0x7B,0x00,0x00,0xB3,0x0A,0x00,0x20,0x08,0xB5,0x08,0x4B,
+0x1B,0x88,0x86,0x2B,0x0B,0xD1,0x07,0x4B,0x9A,0x68,0x01,0x2A,0x02,0xDC,0x9A,0x68,
+0x01,0x32,0x9A,0x60,0x9B,0x68,0x02,0x2B,0x01,0xD1,0xFF,0xF7,0x71,0xF8,0x08,0xBD,
+0x28,0x00,0x00,0x20,0x70,0x00,0x00,0x20,0x7F,0xB5,0x31,0x4C,0x03,0x90,0x23,0x78,
+0x0D,0x1C,0x16,0x1C,0x00,0x2B,0x03,0xD0,0x01,0x20,0x2E,0x49,0xFF,0xF7,0x6E,0xFD,
+0x23,0x78,0x00,0x2B,0x06,0xD0,0x01,0x21,0x08,0x1C,0x03,0xAA,0x04,0x23,0x00,0x91,
+0xFF,0xF7,0x0C,0xFD,0x28,0x4B,0x03,0x99,0x1B,0x78,0x28,0x4A,0x00,0x2B,0x15,0xD1,
+0x13,0x1C,0x4A,0x33,0x00,0x20,0x1B,0x5E,0x8E,0x1B,0x9E,0x42,0x05,0xDC,0x13,0x1C,
+0x4C,0x33,0x00,0x20,0x1B,0x5E,0x9E,0x42,0x08,0xDA,0x21,0x48,0x01,0x23,0x03,0x70,
+0x20,0x48,0x03,0x70,0x20,0x48,0x03,0x70,0x20,0x48,0x03,0x70,0x53,0x78,0x00,0x2B,
+0x04,0xD0,0x1F,0x4B,0x5B,0x5D,0x59,0x43,0x89,0x11,0x03,0x91,0x1D,0x4B,0x6A,0x00,
+0xD0,0x5A,0x1D,0x4B,0x03,0x99,0xD4,0x5E,0xC0,0x08,0x14,0x4A,0x89,0xB2,0x04,0x1B,
+0x64,0x1A,0x56,0x7C,0x24,0xB2,0x19,0x4B,0xB4,0x42,0x02,0xDC,0x76,0x42,0xB4,0x42,
+0x02,0xDA,0x00,0x24,0x5C,0x55,0x05,0xE0,0x5C,0x5D,0x96,0x7C,0xA6,0x42,0x01,0xD0,
+0x01,0x34,0x5C,0x55,0x43,0x1A,0x9B,0xB2,0x92,0x7E,0x19,0xB2,0x91,0x42,0x02,0xDB,
+0x09,0x4A,0x01,0x21,0x11,0x70,0x0C,0x4A,0x6D,0x00,0xAB,0x52,0x7F,0xBD,0xC0,0x46,
+0xEB,0x01,0x00,0x20,0x8B,0x59,0x00,0x00,0xE4,0x01,0x00,0x20,0x48,0x0D,0x00,0x20,
+0x48,0x11,0x00,0x20,0x14,0x09,0x00,0x20,0x30,0x11,0x00,0x20,0xC4,0x01,0x00,0x20,
+0x92,0x7B,0x00,0x00,0x14,0x02,0x00,0x20,0x3C,0x0D,0x00,0x20,0xA4,0x0A,0x00,0x20,
+0xF0,0xB5,0x48,0x4B,0x89,0xB0,0x1B,0x78,0x00,0x2B,0x03,0xD0,0x00,0x20,0x46,0x49,
+0xFF,0xF7,0xF4,0xFC,0x45,0x4A,0x00,0x23,0x13,0x70,0x45,0x4A,0x0C,0x20,0x01,0x38,
+0xC0,0xB2,0x81,0x00,0x8B,0x50,0x00,0x28,0xF9,0xD1,0x42,0x4B,0x42,0x4A,0x18,0x70,
+0x01,0x23,0x13,0x70,0x41,0x4A,0x13,0x70,0x41,0x4B,0x19,0x7E,0x04,0x91,0xDA,0x7D,
+0x05,0x92,0x1B,0x7D,0x06,0x93,0x0B,0x1C,0x2D,0xE0,0x01,0x3B,0xDB,0xB2,0x5D,0x1C,
+0x3C,0x4C,0xEA,0x01,0x12,0x19,0x16,0x88,0x3B,0x49,0x5A,0x00,0x5C,0x01,0x56,0x52,
+0xAD,0x01,0x05,0x9A,0x07,0x94,0x9C,0x46,0x1A,0xE0,0x01,0x3A,0xD2,0xB2,0x93,0x1C,
+0xEB,0x18,0x36,0x4C,0x5B,0x00,0x19,0x5B,0x06,0x9B,0x00,0x2B,0x05,0xD0,0xD3,0x1C,
+0xEB,0x18,0x5B,0x00,0x1B,0x5B,0xC9,0x18,0x49,0x10,0x07,0x9C,0xA7,0x18,0x7B,0x00,
+0x1C,0x1C,0x2F,0x4B,0xE1,0x52,0x2F,0x4C,0x01,0x23,0x89,0x1B,0x3B,0x55,0x40,0x18,
+0x00,0x2A,0xE2,0xD1,0x63,0x46,0x00,0x2B,0xCF,0xD1,0x25,0x4B,0x04,0x9C,0xD9,0x7D,
+0x61,0x43,0x01,0xF0,0xD5,0xF8,0x28,0x4B,0x05,0x1C,0x58,0x8C,0x27,0x4C,0x00,0x28,
+0x02,0xD1,0x40,0x23,0x23,0x60,0x07,0xE0,0x80,0x01,0x29,0x1C,0x01,0xF0,0xC8,0xF8,
+0x6E,0x28,0x00,0xDD,0x6E,0x20,0x20,0x60,0x12,0x4C,0x23,0x78,0x00,0x2B,0x03,0xD0,
+0x00,0x20,0x1F,0x49,0xFF,0xF7,0x8A,0xFC,0x1B,0x4B,0x1E,0x4A,0x5B,0x8C,0x55,0x80,
+0x13,0x80,0x23,0x78,0x00,0x2B,0x06,0xD0,0x01,0x23,0x02,0x21,0x00,0x93,0x00,0x20,
+0x0B,0x1C,0xFF,0xF7,0x23,0xFC,0x18,0x4B,0x18,0x48,0x1B,0x78,0x00,0x22,0x18,0x49,
+0x04,0xE0,0x01,0x3B,0xDB,0xB2,0x5C,0x00,0xC2,0x54,0x62,0x52,0x00,0x2B,0xF8,0xD1,
+0x09,0xB0,0xF0,0xBD,0xEB,0x01,0x00,0x20,0x91,0x59,0x00,0x00,0x1C,0x03,0x00,0x20,
+0xBC,0x11,0x00,0x20,0xF4,0x10,0x00,0x20,0x20,0x09,0x00,0x20,0x3C,0x11,0x00,0x20,
+0xAE,0x09,0x00,0x20,0x02,0x40,0x00,0x40,0x94,0x11,0x00,0x20,0x00,0x40,0x00,0x40,
+0xF8,0x03,0x00,0x20,0xB3,0x0A,0x00,0x20,0x48,0x0D,0x00,0x20,0x78,0x09,0x00,0x20,
+0x9A,0x59,0x00,0x00,0x54,0x11,0x00,0x20,0x7C,0x09,0x00,0x20,0xA4,0x0A,0x00,0x20,
+0x14,0x02,0x00,0x20,0xF0,0xB5,0xA0,0x4A,0x00,0x23,0x13,0x70,0x9F,0x4A,0x85,0xB0,
+0x13,0x70,0x9F,0x4A,0x13,0x70,0x9F,0x4A,0x13,0x70,0x9F,0x4B,0x1B,0x78,0x00,0x2B,
+0x03,0xD0,0x01,0x20,0x9D,0x49,0xFF,0xF7,0x31,0xFC,0x00,0x24,0x9C,0x4D,0x9A,0x4E,
+0x11,0xE0,0x33,0x78,0x00,0x2B,0x0C,0xD0,0xEB,0x7D,0x29,0x7D,0x99,0x48,0xC9,0x18,
+0xE2,0x01,0x00,0x23,0x12,0x18,0x00,0x93,0xC9,0xB2,0x01,0x20,0x02,0x23,0xFF,0xF7,
+0xC5,0xFB,0x01,0x34,0xE4,0xB2,0x29,0x7E,0x8C,0x42,0xEA,0xD3,0x92,0x4B,0x1B,0x78,
+0x00,0x2B,0x00,0xD1,0x0D,0xE1,0x91,0x4B,0x1A,0x78,0x00,0x2A,0x1F,0xD1,0x90,0x4B,
+0x1B,0x78,0x00,0x2B,0x1B,0xD0,0xEB,0x7D,0x8E,0x4C,0x07,0xE0,0x01,0x3B,0xDB,0xB2,
+0x5D,0x01,0x2D,0x18,0x2A,0x55,0x00,0x2B,0xF8,0xD1,0x03,0x1C,0x58,0x1E,0xC0,0xB2,
+0x00,0x2B,0x01,0xD0,0x0B,0x1C,0xF6,0xE7,0x87,0x4A,0x86,0x48,0x12,0x78,0x49,0x01,
+0x03,0xE0,0x01,0x3A,0xD2,0xB2,0x8C,0x18,0x23,0x54,0x00,0x2A,0xF9,0xD1,0x80,0x4B,
+0x7E,0x4A,0x19,0x78,0x1B,0x78,0x11,0x70,0x00,0x2B,0x70,0xD0,0x78,0x4B,0x1A,0x7E,
+0xD9,0x7D,0x02,0x92,0x1B,0x7D,0x03,0x93,0x22,0xE0,0x01,0x3B,0xDB,0xB2,0x59,0x1C,
+0x89,0x01,0xC8,0x19,0x79,0x4C,0x03,0x9D,0x40,0x00,0x00,0x5B,0x00,0x2D,0x04,0xD0,
+0x89,0x19,0x49,0x00,0x09,0x5B,0x40,0x18,0x40,0x10,0x59,0x01,0x89,0x18,0x74,0x4D,
+0x4C,0x00,0x65,0x5B,0x6F,0x4C,0xED,0x08,0x0C,0x5D,0x28,0x1A,0x84,0x42,0x04,0xDA,
+0xFF,0x28,0x00,0xDD,0xFF,0x20,0x6B,0x4D,0x68,0x54,0x00,0x2B,0xDD,0xD1,0x11,0x1C,
+0x4A,0x1E,0xD2,0xB2,0x00,0x29,0x03,0xD0,0x02,0x9B,0x97,0x1C,0xD6,0x1C,0xF4,0xE7,
+0x5F,0x4A,0x65,0x4B,0x17,0x7E,0x1B,0x78,0x62,0x49,0x7F,0x01,0x10,0xE0,0x01,0x3B,
+0xDB,0xB2,0x64,0x4E,0x5A,0x00,0x94,0x5B,0xF8,0x18,0x45,0x56,0x26,0xB2,0x2A,0x1C,
+0xB5,0x42,0x00,0xDA,0x22,0x1C,0x12,0xB2,0xFF,0x2A,0x00,0xDD,0xFF,0x22,0x42,0x54,
+0x00,0x2B,0xEC,0xD1,0x50,0x4B,0x1B,0x78,0x00,0x2B,0x03,0xD0,0x03,0x20,0x5A,0x49,
+0xFF,0xF7,0x94,0xFB,0x00,0x24,0x4E,0x4D,0x4B,0x4E,0x0E,0xE0,0x33,0x78,0x00,0x2B,
+0x09,0xD0,0x50,0x4B,0x62,0x01,0xD2,0x18,0x00,0x23,0xE9,0x7D,0x03,0x20,0x00,0x93,
+0x01,0x23,0xFF,0xF7,0x2B,0xFB,0x01,0x34,0xE4,0xB2,0x2B,0x7E,0xA3,0x42,0xED,0xD8,
+0x40,0x4A,0x01,0x23,0x13,0x70,0x3D,0x4A,0x13,0x70,0x3B,0x4A,0x13,0x70,0x3E,0x4B,
+0x1B,0x78,0x00,0x2B,0x6D,0xD0,0x49,0x4B,0x1B,0x68,0x58,0x02,0x69,0xD5,0x3C,0x4A,
+0x80,0x24,0x16,0x7D,0x13,0x7E,0xD2,0x7D,0x45,0x4D,0xB6,0x18,0xF6,0xB2,0x24,0x06,
+0xB4,0x46,0x18,0xE0,0x01,0x3B,0xDB,0xB2,0x42,0x49,0x5A,0x00,0x5F,0x1C,0x56,0x5A,
+0xBF,0x01,0x62,0x46,0x0D,0xE0,0x01,0x3A,0xD2,0xB2,0x91,0x1C,0x79,0x18,0x37,0x48,
+0x49,0x00,0x09,0x5A,0x89,0x1B,0x8C,0x42,0x00,0xDA,0x0C,0x1C,0x8D,0x42,0x00,0xDD,
+0x0D,0x1C,0x00,0x2A,0xEF,0xD1,0x00,0x2B,0xE4,0xD1,0x16,0x20,0x36,0x49,0xFF,0xF7,
+0x45,0xFB,0x25,0x4B,0x35,0x4A,0x1B,0x78,0x14,0x80,0x55,0x80,0x00,0x2B,0x06,0xD0,
+0x01,0x23,0x02,0x21,0x00,0x93,0x16,0x20,0x0B,0x1C,0xFF,0xF7,0xDF,0xFA,0x26,0x4B,
+0x80,0x20,0x1B,0x78,0x2A,0x49,0x00,0x06,0x2D,0x4E,0x2E,0x4D,0x19,0xE0,0x01,0x3B,
+0xDB,0xB2,0xF7,0x5C,0x7A,0x1C,0x94,0x46,0x64,0x46,0xEA,0x5C,0xA4,0x01,0xA4,0x46,
+0x02,0x32,0x62,0x44,0x1D,0x4C,0x52,0x00,0x12,0x5B,0x22,0x4C,0x7F,0x00,0x94,0x46,
+0x3A,0x5B,0x64,0x46,0xA2,0x1A,0x90,0x42,0x00,0xDA,0x10,0x1C,0x91,0x42,0x00,0xDD,
+0x11,0x1C,0x00,0x2B,0xE3,0xD1,0x0C,0x4B,0x1C,0x4A,0x1B,0x78,0x10,0x80,0x51,0x80,
+0x00,0x2B,0x06,0xD0,0x01,0x23,0x02,0x21,0x00,0x93,0x16,0x20,0x0B,0x1C,0xFF,0xF7,
+0xAD,0xFA,0x05,0xB0,0xF0,0xBD,0xC0,0x46,0xAC,0x09,0x00,0x20,0x14,0x09,0x00,0x20,
+0x30,0x11,0x00,0x20,0x48,0x11,0x00,0x20,0xEB,0x01,0x00,0x20,0xAB,0x59,0x00,0x00,
+0xAE,0x09,0x00,0x20,0x84,0x40,0x00,0x40,0x1C,0x03,0x00,0x20,0xE1,0x01,0x00,0x20,
+0xE3,0x01,0x00,0x20,0x64,0x0E,0x00,0x20,0x7C,0x09,0x00,0x20,0x00,0x40,0x00,0x40,
+0xF8,0x03,0x00,0x20,0x3C,0x0D,0x00,0x20,0xAF,0x59,0x00,0x00,0x58,0x00,0x00,0x20,
+0xFF,0xFF,0xFF,0x7F,0x94,0x11,0x00,0x20,0xB5,0x59,0x00,0x00,0x54,0x11,0x00,0x20,
+0x30,0x75,0x00,0x00,0x2A,0x75,0x00,0x00,0xF0,0xB5,0xB3,0x4B,0xA5,0xB0,0x1B,0x78,
+0x00,0x2B,0x00,0xD0,0x01,0xE2,0xB1,0x4A,0xB1,0x4C,0x12,0x78,0xB1,0x4D,0xB2,0x4E,
+0x64,0x7C,0x52,0xB2,0x6B,0x60,0x2B,0x60,0x6B,0x82,0x6B,0x81,0x2B,0x82,0x2B,0x81,
+0x33,0x60,0xB3,0x60,0x1B,0x92,0xAD,0x4F,0xFF,0x22,0xAD,0x4B,0x72,0x60,0xF2,0x60,
+0x11,0x94,0x3F,0x7E,0x1B,0x78,0xA9,0x4C,0x09,0x97,0x0B,0x93,0xE4,0x7D,0xA4,0x4D,
+0x08,0x94,0x46,0x23,0xED,0x5E,0xA2,0x4F,0x0E,0x95,0x48,0x23,0xFF,0x5E,0xA3,0x4C,
+0x0F,0x97,0x24,0x7D,0x2D,0x23,0x0C,0x94,0x9D,0x4D,0xA2,0x4E,0x11,0x9F,0x6D,0x78,
+0x36,0x68,0x7F,0x42,0x9A,0x4C,0x0D,0x95,0x12,0x96,0x1D,0x97,0xA4,0x7C,0x98,0x4D,
+0x22,0x94,0xEB,0x5C,0x1B,0x9E,0x13,0x93,0x10,0x23,0x9B,0x1B,0x1E,0x93,0x18,0x27,
+0xEF,0x57,0x1C,0x20,0x14,0x97,0x28,0x56,0x19,0x21,0x18,0x90,0x69,0x56,0x00,0x23,
+0x00,0x22,0x00,0x24,0x23,0x91,0x05,0x93,0x00,0x25,0x00,0x26,0x00,0x27,0xFF,0x20,
+0x00,0x21,0xFF,0x23,0x06,0x92,0x17,0x94,0x10,0x95,0x1A,0x96,0x15,0x97,0x19,0x90,
+0x21,0x91,0x1F,0x92,0x16,0x93,0x1C,0x94,0x09,0x9C,0x00,0x2C,0x00,0xD1,0x27,0xE1,
+0x09,0x9B,0x89,0x4D,0x01,0x3B,0xDB,0xB2,0x09,0x93,0x5B,0x00,0x5B,0x5B,0x08,0x9E,
+0x0A,0x93,0x00,0x2E,0xF0,0xD0,0x09,0x9F,0x84,0x48,0x01,0x37,0xFB,0x01,0x1B,0x18,
+0x1B,0x88,0x0A,0x99,0x0E,0x9C,0x5A,0x1A,0x94,0x42,0x00,0xDA,0x92,0xE1,0x0F,0x9D,
+0x95,0x42,0x00,0xDD,0x8B,0xE1,0x09,0x9E,0xBF,0x01,0x01,0x21,0x02,0x25,0x00,0x22,
+0x70,0x01,0x03,0x97,0x2C,0xE0,0x7A,0x4D,0x84,0x18,0x64,0x00,0x6E,0x46,0x18,0x27,
+0x2C,0x5B,0xBD,0x5F,0xE4,0x1A,0xAC,0x42,0x01,0xDD,0xA7,0xB2,0x06,0x97,0x6E,0x46,
+0x14,0x27,0xBD,0x5F,0xAC,0x42,0x01,0xDA,0xA4,0xB2,0x05,0x94,0x82,0x18,0x70,0x4F,
+0x52,0x00,0xBB,0x52,0x08,0x9A,0xCB,0xB2,0x9A,0x42,0xBD,0xD9,0x03,0x9A,0x8D,0x1C,
+0x53,0x19,0x6C,0x4C,0x5B,0x00,0x1B,0x5B,0x0A,0x9E,0x0E,0x9F,0x0A,0x1C,0x9C,0x1B,
+0xBC,0x42,0x00,0xDD,0x38,0xE1,0x0F,0x9E,0x01,0x31,0xB4,0x42,0x00,0xDA,0xD1,0xE0,
+0x0C,0x9F,0x00,0x2F,0x07,0xD0,0x03,0x9E,0xD4,0x1C,0x34,0x19,0x61,0x4F,0x64,0x00,
+0xE4,0x5B,0xE3,0x18,0x5B,0x10,0x0D,0x9C,0x00,0x2C,0x06,0xD0,0x5E,0x4E,0x84,0x18,
+0xA4,0x5D,0x12,0x9F,0x63,0x43,0x7B,0x43,0x1B,0x13,0x0B,0x9C,0x00,0x2C,0xBA,0xD0,
+0x86,0x18,0x57,0x4F,0x74,0x00,0x3F,0x5B,0xBC,0x46,0x58,0x4F,0xBC,0x57,0x66,0x46,
+0xF6,0x08,0x34,0x1B,0x07,0x94,0x6F,0x46,0x18,0x24,0x04,0x96,0xE7,0x5F,0x07,0x9E,
+0xF4,0x1A,0xBC,0x42,0x01,0xDD,0xA7,0xB2,0x06,0x97,0x6E,0x46,0x14,0x27,0xBE,0x5F,
+0xB4,0x42,0x01,0xDA,0xA6,0xB2,0x05,0x96,0x11,0x9F,0xBC,0x42,0x5D,0xDD,0x84,0x18,
+0xA4,0x46,0x4B,0x4C,0x00,0x27,0x66,0x46,0x37,0x55,0x04,0x9F,0x13,0x9E,0xFC,0x1A,
+0x00,0x2E,0x08,0xD0,0x1B,0x9F,0x07,0x9C,0x1E,0x9E,0x7B,0x43,0x74,0x43,0x04,0x9F,
+0x1C,0x19,0x24,0x11,0x3C,0x1B,0x23,0x1C,0x7F,0x33,0x17,0xDA,0x3F,0x4E,0x82,0x18,
+0x80,0x23,0xB3,0x54,0x23,0x9A,0x21,0x9E,0xA3,0x1A,0xF6,0x18,0x21,0x96,0x1F,0xAF,
+0x00,0x23,0xFB,0x5E,0x9C,0x42,0x01,0xDC,0xA4,0xB2,0x1F,0x94,0x03,0x9A,0x35,0x4C,
+0x55,0x19,0x6D,0x00,0x00,0x27,0x2B,0x5B,0x2F,0x53,0x83,0xE7,0x83,0x18,0x7E,0x2C,
+0x36,0xDD,0x32,0x4E,0x7F,0x27,0xF7,0x54,0x14,0x9F,0xBC,0x42,0x03,0xDB,0x17,0x9E,
+0xE3,0x1B,0xF6,0x18,0x17,0x96,0x10,0xAF,0x00,0x23,0xFB,0x5E,0x9C,0x42,0x24,0xDC,
+0xA3,0xB2,0x18,0x9E,0xB4,0x42,0x11,0xDB,0x1A,0x9F,0x09,0x9C,0xA7,0x42,0x00,0xDA,
+0x1A,0x94,0x16,0x9E,0x09,0x9C,0xA6,0x42,0x00,0xDD,0x16,0x94,0x15,0x9E,0x96,0x42,
+0x00,0xDA,0x15,0x92,0x19,0x9F,0xBA,0x42,0x00,0xDA,0x19,0x92,0x03,0x9A,0x1D,0x4C,
+0x55,0x19,0x6D,0x00,0x2A,0x5B,0x2B,0x53,0x54,0xE7,0x1D,0x9E,0x87,0x18,0xB4,0x42,
+0x0E,0xDA,0x1B,0x4C,0x00,0x26,0x3E,0x55,0x9F,0xE7,0xA3,0xB2,0x10,0x93,0xD8,0xE7,
+0x16,0x4E,0xF4,0x54,0x00,0x2C,0xC7,0xDA,0x23,0x9F,0xBC,0x42,0xAF,0xDC,0xA9,0xE7,
+0x13,0x4E,0x20,0x97,0xBC,0x5D,0x22,0x9E,0x67,0xB2,0xB7,0x42,0x8D,0xD0,0x20,0x9F,
+0x0F,0x4E,0x01,0x34,0xBC,0x55,0x88,0xE7,0xAC,0x09,0x00,0x20,0x4C,0x00,0x00,0x20,
+0x48,0x0D,0x00,0x20,0x70,0x01,0x00,0x20,0xE4,0x10,0x00,0x20,0xAE,0x09,0x00,0x20,
+0x1C,0x03,0x00,0x20,0x78,0x09,0x00,0x20,0x94,0x11,0x00,0x20,0x04,0x40,0x00,0x40,
+0xF8,0x03,0x00,0x20,0x00,0x40,0x00,0x40,0x12,0x79,0x00,0x00,0x64,0x0E,0x00,0x20,
+0xB3,0x0A,0x00,0x20,0x09,0x9C,0x01,0x27,0x1C,0x97,0x00,0x2C,0x00,0xD0,0xD7,0xE6,
+0x6D,0x46,0x6F,0x46,0x18,0x26,0x14,0x20,0x76,0x5B,0xC0,0x5B,0x41,0x4D,0x17,0x99,
+0x10,0xAC,0x2F,0x1C,0x2E,0x82,0x68,0x82,0x29,0x60,0x25,0x88,0x21,0x9B,0x3C,0x1C,
+0x3D,0x81,0x1A,0x9E,0x3C,0x4F,0x63,0x60,0x1F,0xAC,0x25,0x88,0xBE,0x60,0x16,0x98,
+0x15,0x99,0x19,0x9A,0x37,0x4C,0x0B,0x9E,0xF8,0x60,0x39,0x60,0x7A,0x60,0x65,0x81,
+0x00,0x2E,0x24,0xD0,0x35,0x4B,0x1B,0x78,0x00,0x2B,0x03,0xD0,0x34,0x4B,0x1B,0x68,
+0x00,0x2B,0x1C,0xDD,0x33,0x4C,0x23,0x78,0x00,0x2B,0x56,0xD1,0x32,0x4F,0x3B,0x7E,
+0x00,0x2B,0x14,0xD0,0x31,0x4D,0x09,0x9F,0x01,0x26,0x23,0x78,0x00,0x2B,0x08,0xD0,
+0x2D,0x48,0x7A,0x01,0xC1,0x7D,0x52,0x19,0x03,0x20,0x01,0x23,0x00,0x96,0xFF,0xF7,
+0xAD,0xF8,0x29,0x49,0x01,0x37,0x0B,0x7E,0xFF,0xB2,0xBB,0x42,0xED,0xD8,0x26,0x4C,
+0x23,0x7D,0x00,0x2B,0x13,0xD0,0x22,0x7E,0xE4,0x7D,0x01,0x3A,0x24,0x49,0xD2,0xB2,
+0x02,0x34,0x00,0x20,0x53,0x1C,0x9B,0x01,0x1B,0x19,0x5B,0x00,0x01,0x3A,0x5D,0x5A,
+0xD2,0xB2,0x5D,0x5A,0x58,0x52,0xF5,0xE7,0x01,0x26,0x1C,0x96,0x74,0xE6,0x1D,0x4D,
+0x1D,0x4E,0xAB,0x7E,0x32,0x68,0x13,0x4F,0x53,0x43,0x08,0x21,0x79,0x5E,0x1B,0x48,
+0x9B,0x11,0x1B,0x4A,0xCD,0x17,0xDC,0x0F,0x00,0x78,0x99,0x42,0x65,0x41,0x15,0x70,
+0x00,0x28,0x0A,0xD1,0x1C,0x9C,0x00,0x2C,0x07,0xD0,0x01,0x23,0x13,0x70,0x15,0x4A,
+0x15,0x49,0x13,0x70,0x15,0x4A,0x0B,0x70,0x13,0x70,0x25,0xB0,0xF0,0xBD,0x01,0x25,
+0x1C,0x95,0x51,0xE6,0x01,0x24,0x1C,0x94,0x4E,0xE6,0x03,0x20,0x10,0x49,0xFF,0xF7,
+0xBD,0xF8,0xA3,0xE7,0x70,0x01,0x00,0x20,0xE4,0x10,0x00,0x20,0xDE,0x01,0x00,0x20,
+0x20,0x01,0x00,0x20,0xEB,0x01,0x00,0x20,0xAE,0x09,0x00,0x20,0x64,0x0E,0x00,0x20,
+0x00,0x40,0x00,0x40,0x48,0x0D,0x00,0x20,0x78,0x09,0x00,0x20,0xE4,0x01,0x00,0x20,
+0x14,0x09,0x00,0x20,0x30,0x11,0x00,0x20,0x48,0x11,0x00,0x20,0xC4,0x01,0x00,0x20,
+0xF0,0x59,0x00,0x00,0xF0,0xB5,0x2F,0x4B,0x85,0xB0,0x1C,0x78,0x2E,0x4D,0x2F,0x4E,
+0x10,0xE0,0x01,0x3C,0xE4,0xB2,0x2B,0x57,0x32,0x57,0x59,0x1C,0x02,0x32,0x89,0x01,
+0x89,0x18,0x2B,0x4A,0x49,0x00,0x88,0x5A,0x2A,0x4A,0x5B,0x00,0x9A,0x5A,0x21,0x1C,
+0xFF,0xF7,0x0A,0xFB,0x00,0x2C,0xEC,0xD1,0x27,0x4B,0x1B,0x78,0x00,0x2B,0x08,0xD0,
+0x20,0x4B,0x03,0x20,0x19,0x78,0x01,0x23,0x00,0x93,0x24,0x4A,0x02,0x23,0xFF,0xF7,
+0x1D,0xF8,0x23,0x4B,0x1E,0x49,0x18,0x78,0x9A,0x78,0x84,0x1C,0x03,0x92,0xDE,0x78,
+0x00,0x23,0x02,0x94,0x0D,0xE0,0xA4,0x01,0xE4,0x19,0x64,0x00,0x65,0x5A,0x00,0x25,
+0x65,0x52,0x01,0x32,0x02,0xE0,0x02,0x9C,0x00,0x22,0xE7,0x18,0xB4,0x1A,0xF2,0xD1,
+0x01,0x33,0x03,0x9D,0x1A,0x18,0xAA,0x42,0xF5,0xDB,0x15,0x4B,0x10,0x49,0x58,0x78,
+0xDE,0x78,0x42,0x1C,0x01,0x23,0x5B,0x42,0x02,0x92,0x00,0x22,0x9F,0x1C,0x08,0xE0,
+0x02,0x9D,0xAC,0x18,0xA4,0x01,0xE4,0x19,0x64,0x00,0x65,0x5A,0x00,0x25,0x65,0x52,
+0x01,0x32,0x14,0x18,0xB4,0x42,0xF3,0xDB,0x03,0x9A,0x01,0x33,0x93,0x42,0xEC,0xDB,
+0x05,0xB0,0xF0,0xBD,0x7C,0x09,0x00,0x20,0x30,0x75,0x00,0x00,0x2A,0x75,0x00,0x00,
+0x00,0x40,0x00,0x40,0x94,0x11,0x00,0x20,0xEB,0x01,0x00,0x20,0x3C,0x0D,0x00,0x20,
+0x0A,0x03,0x00,0x20,0x30,0xB5,0x0C,0x4B,0x0C,0x4C,0xDB,0x78,0x0C,0x49,0x10,0xE0,
+0x01,0x3B,0xDB,0xB2,0x5A,0x1C,0x0B,0x4D,0xD2,0x01,0x52,0x19,0x45,0x1C,0x03,0xD1,
+0x15,0x88,0x5A,0x00,0x55,0x52,0x04,0xE0,0x15,0x88,0x5A,0x01,0x12,0x18,0x52,0x00,
+0x15,0x53,0x00,0x2B,0xEC,0xD1,0x30,0xBD,0x0A,0x03,0x00,0x20,0xF8,0x03,0x00,0x20,
+0x94,0x11,0x00,0x20,0x02,0x40,0x00,0x40,0xF0,0xB5,0x8D,0xB0,0x0A,0x91,0x0B,0x92,
+0x63,0x4B,0x41,0x1C,0x0C,0xD1,0x63,0x4A,0x63,0x49,0x12,0x7E,0x01,0x3A,0x03,0x92,
+0xDA,0x78,0x5E,0x78,0x54,0x00,0x00,0x23,0x55,0x1C,0x64,0x18,0x94,0x46,0x0E,0xE0,
+0xDC,0x7B,0x5A,0x79,0xA2,0x18,0x01,0x3A,0x10,0xE0,0x5C,0x4A,0xE9,0x18,0xC9,0x01,
+0x89,0x18,0x0A,0x88,0x5F,0x00,0xE2,0x53,0x0A,0x88,0x00,0x22,0x0A,0x80,0x01,0x3B,
+0x67,0x46,0xDA,0x19,0xB2,0x42,0xF0,0xDA,0x03,0x9A,0x00,0x24,0x56,0x01,0x54,0x4D,
+0x36,0x18,0x00,0x23,0x76,0x00,0x11,0x1C,0x08,0x93,0x07,0x93,0x06,0x93,0x05,0x93,
+0x03,0x95,0x09,0x96,0xA4,0x46,0x55,0xE0,0x44,0x1C,0x04,0xD1,0x4A,0x4C,0x56,0x00,
+0x34,0x19,0xE4,0x5A,0x04,0xE0,0x4B,0x4C,0x09,0x9F,0x3E,0x19,0x5C,0x01,0x34,0x5B,
+0x4E,0x1C,0x46,0x4F,0x04,0x96,0xF6,0x01,0xF6,0x19,0x37,0x88,0x24,0xB2,0x3E,0xB2,
+0x45,0x4F,0xA6,0x1B,0x54,0x00,0xE7,0x19,0xF4,0x17,0xFE,0x52,0x36,0x19,0x66,0x40,
+0x0F,0x1C,0x01,0x24,0xA7,0x43,0xB9,0x42,0x09,0xD1,0x07,0x9C,0xA4,0x19,0x07,0x94,
+0xB5,0x42,0x00,0xDD,0x35,0x1C,0x06,0x9F,0xB7,0x42,0x0B,0xDB,0x0D,0xE0,0x08,0x9C,
+0x03,0x9F,0xA4,0x19,0x08,0x94,0xB7,0x42,0x00,0xDD,0x03,0x96,0x05,0x9C,0xB4,0x42,
+0x02,0xDB,0x02,0xE0,0x06,0x96,0x00,0xE0,0x05,0x96,0x04,0x9E,0xF4,0x01,0x2F,0x4E,
+0xA4,0x19,0x47,0x1C,0x0E,0xD1,0x27,0x88,0x2B,0x4E,0x04,0x97,0x57,0x00,0xBE,0x19,
+0x02,0x96,0x10,0x27,0x6E,0x46,0xBF,0x5B,0x02,0x9E,0xF7,0x52,0x26,0x88,0x00,0x26,
+0x26,0x80,0x05,0xE0,0x27,0x88,0x27,0x4E,0x09,0x9C,0xA6,0x19,0x5C,0x01,0x37,0x53,
+0x01,0x39,0x02,0x3B,0x61,0x45,0xA7,0xDA,0x01,0x30,0x13,0xD1,0x23,0x4C,0x23,0x78,
+0x00,0x2B,0x03,0xD0,0x01,0x20,0x22,0x49,0xFE,0xF7,0x70,0xFF,0x23,0x78,0x00,0x2B,
+0x08,0xD0,0x17,0x4B,0x01,0x20,0xD9,0x78,0x00,0x23,0x00,0x93,0x16,0x4A,0x02,0x23,
+0xFE,0xF7,0x0C,0xFF,0x07,0x9E,0x08,0x9F,0x0A,0x9C,0xF3,0x19,0x23,0x60,0x05,0x9E,
+0x03,0x9F,0x06,0x9C,0xF3,0x1B,0x65,0x1B,0x9D,0x42,0x00,0xDA,0x1D,0x1C,0x0B,0x9E,
+0x12,0x4C,0x35,0x60,0x23,0x78,0x00,0x2B,0x03,0xD0,0x0B,0x20,0x11,0x49,0xFE,0xF7,
+0x4D,0xFF,0x23,0x78,0x00,0x2B,0x08,0xD0,0x06,0x4B,0x0B,0x20,0x19,0x7E,0x01,0x23,
+0x00,0x93,0x09,0x4A,0x02,0x23,0xFE,0xF7,0xE9,0xFE,0x0D,0xB0,0xF0,0xBD,0xC0,0x46,
+0x0A,0x03,0x00,0x20,0xAE,0x09,0x00,0x20,0x94,0x11,0x00,0x20,0x02,0x40,0x00,0x40,
+0xFF,0xFF,0x00,0x00,0xF8,0x03,0x00,0x20,0x54,0x11,0x00,0x20,0xEB,0x01,0x00,0x20,
+0xC6,0x59,0x00,0x00,0xCD,0x59,0x00,0x00,0xF0,0xB5,0xA6,0x4B,0x85,0xB0,0x1D,0x78,
+0x00,0x2D,0x29,0xD0,0xA4,0x4B,0xA5,0x4C,0x18,0x78,0xA5,0x4B,0x46,0xB2,0x19,0x68,
+0x5B,0x68,0xB2,0x00,0xCB,0x18,0x13,0x51,0x82,0x1D,0xD2,0xB2,0x00,0x25,0x06,0x23,
+0x01,0x3B,0xDB,0xB2,0xF1,0x1A,0x00,0xD5,0x0C,0x31,0x89,0x00,0x09,0x59,0x6D,0x18,
+0x11,0x1C,0x0B,0x2A,0x01,0xD9,0x0C,0x39,0xC9,0xB2,0x89,0x00,0x61,0x58,0x01,0x3A,
+0x6D,0x1A,0xD2,0xB2,0x00,0x2B,0xEB,0xD1,0x01,0x30,0x93,0x4A,0xC0,0xB2,0x10,0x70,
+0x40,0xB2,0x0B,0x28,0x00,0xDD,0x13,0x70,0x92,0x4B,0x1B,0x78,0x00,0x2B,0x00,0xD0,
+0x15,0xE1,0x91,0x4B,0x14,0x21,0x5B,0x5E,0x9D,0x42,0x02,0xDA,0x8F,0x4B,0x01,0x22,
+0x1A,0x70,0x8B,0x4B,0x10,0x22,0x9E,0x5E,0x12,0x24,0x1B,0x5F,0xF6,0x1A,0x85,0x4B,
+0x18,0x78,0x00,0x28,0x16,0xD1,0x8A,0x4B,0x8A,0x4F,0x1B,0x68,0x8A,0x4C,0xBB,0x80,
+0x23,0x78,0x3E,0x80,0x00,0x2B,0x02,0xD0,0x88,0x49,0xFE,0xF7,0xD7,0xFE,0x23,0x78,
+0x00,0x2B,0x07,0xD0,0x01,0x23,0x02,0x21,0x00,0x93,0x00,0x20,0x3A,0x1C,0x0B,0x1C,
+0xFE,0xF7,0x74,0xFE,0x7C,0x4B,0x9A,0x7D,0x96,0x42,0x07,0xDC,0x80,0x4B,0x1A,0x78,
+0x51,0xB2,0x02,0x29,0x08,0xDC,0x01,0x32,0x1A,0x70,0x05,0xE0,0xDB,0x7D,0x9E,0x42,
+0x02,0xDB,0x7B,0x4B,0x00,0x22,0x1A,0x70,0x71,0x4B,0x76,0x4A,0x59,0x68,0x1B,0x68,
+0x15,0x80,0xCB,0x18,0x53,0x80,0x74,0x4B,0x96,0x80,0x1B,0x78,0x00,0x2B,0x06,0xD0,
+0x01,0x23,0x00,0x93,0x19,0x20,0x03,0x21,0x02,0x23,0xFE,0xF7,0x4F,0xFE,0x6B,0x4B,
+0x64,0x4C,0x1B,0x78,0x00,0x2B,0x61,0xD0,0x6B,0x4D,0x2B,0x78,0x00,0x2B,0x03,0xD0,
+0x19,0x20,0x6C,0x49,0xFE,0xF7,0x9A,0xFE,0x69,0x4B,0x1B,0x78,0x00,0x2B,0x05,0xD1,
+0x22,0x78,0x00,0x2A,0x52,0xD0,0x61,0x4A,0x13,0x70,0x4F,0xE0,0x03,0x2B,0x4D,0xD1,
+0x2B,0x78,0x00,0x2B,0x03,0xD0,0x00,0x20,0x63,0x49,0xFE,0xF7,0x87,0xFE,0x55,0x4B,
+0x62,0x4A,0x19,0x78,0x00,0x29,0x1A,0xD1,0x01,0x20,0x18,0x70,0x13,0x7E,0xD6,0x7D,
+0x5F,0x4D,0x60,0x4A,0x0B,0xE0,0x01,0x3B,0xDB,0xB2,0xF8,0x18,0x44,0x00,0xA1,0x5A,
+0xC9,0x00,0xA1,0x52,0x00,0x21,0x41,0x55,0x00,0x2B,0xF4,0xD1,0x63,0x46,0x59,0x1E,
+0xC9,0xB2,0x00,0x2B,0x23,0xD0,0x33,0x1C,0x4F,0x01,0x8C,0x46,0xF4,0xE7,0x13,0x7E,
+0xD6,0x7D,0x54,0x4A,0x0E,0xE0,0x01,0x3B,0x51,0x4D,0xDB,0xB2,0xFC,0x18,0x60,0x00,
+0x64,0x57,0xE4,0x00,0x02,0x94,0x84,0x5A,0x02,0x9D,0x64,0x1B,0x84,0x52,0x00,0x2B,
+0xF1,0xD1,0x0B,0x1C,0x59,0x1E,0xC9,0xB2,0x00,0x2B,0x02,0xD0,0x33,0x1C,0x4F,0x01,
+0xF5,0xE7,0x3A,0x4A,0x11,0x1C,0x30,0x31,0x08,0xC2,0x8A,0x42,0xFC,0xD1,0x3B,0x4B,
+0x00,0x22,0x1A,0x70,0x44,0x4B,0x01,0x22,0x1A,0x70,0x60,0xE0,0x22,0x78,0x43,0x4B,
+0x00,0x2A,0x06,0xD1,0x40,0x4A,0x01,0x21,0x11,0x70,0x1A,0x68,0x52,0x18,0x1A,0x60,
+0x55,0xE0,0x00,0x22,0x1A,0x60,0x39,0x4B,0x3D,0x48,0x1C,0x7E,0xDB,0x7D,0x39,0x49,
+0x02,0x93,0x2D,0x4B,0x9B,0x7C,0x03,0x93,0x11,0xE0,0x01,0x3B,0xDB,0xB2,0xF2,0x18,
+0x14,0x56,0x03,0x9D,0xAC,0x42,0x07,0xD1,0x31,0x4D,0x54,0x00,0x57,0x57,0x65,0x5A,
+0xEF,0x1B,0x67,0x52,0x00,0x24,0x14,0x54,0x00,0x2B,0xEE,0xD1,0x64,0x46,0x65,0x1E,
+0xED,0xB2,0x00,0x2C,0x03,0xD0,0x02,0x9B,0x6E,0x01,0xAC,0x46,0xF4,0xE7,0x2D,0x4B,
+0x1B,0x68,0x5D,0x07,0x2B,0xD5,0x20,0x4B,0x1B,0x78,0x00,0x2B,0x22,0xD0,0x02,0x20,
+0x29,0x49,0xFE,0xF7,0x03,0xFE,0x1D,0xE0,0xE9,0x7D,0x62,0x01,0x0B,0x1C,0x21,0x48,
+0x02,0x92,0x08,0xE0,0x01,0x3B,0x02,0x9A,0xDB,0xB2,0xD2,0x18,0x52,0x00,0x12,0x5A,
+0x5F,0x00,0xD2,0x08,0xBA,0x53,0x00,0x2B,0xF4,0xD1,0x13,0x4A,0x12,0x78,0x00,0x2A,
+0x05,0xD0,0x02,0x20,0x00,0x93,0x0F,0x4A,0x03,0x1C,0xFE,0xF7,0x8F,0xFD,0x01,0x34,
+0xE4,0xB2,0x01,0xE0,0x11,0x4D,0x0B,0x4E,0x2B,0x7E,0xA3,0x42,0xDC,0xD8,0x05,0xB0,
+0xF0,0xBD,0xC0,0x46,0x1C,0x03,0x00,0x20,0xF4,0x10,0x00,0x20,0xBC,0x11,0x00,0x20,
+0x70,0x01,0x00,0x20,0x14,0x09,0x00,0x20,0x48,0x0D,0x00,0x20,0x3C,0x11,0x00,0x20,
+0x34,0x11,0x00,0x20,0x54,0x11,0x00,0x20,0xEB,0x01,0x00,0x20,0xD2,0x59,0x00,0x00,
+0x20,0x09,0x00,0x20,0xD9,0x59,0x00,0x00,0xE2,0x59,0x00,0x00,0xAE,0x09,0x00,0x20,
+0x64,0x0E,0x00,0x20,0xF8,0x03,0x00,0x20,0x48,0x11,0x00,0x20,0xBC,0x01,0x00,0x20,
+0xB3,0x0A,0x00,0x20,0x58,0x00,0x00,0x20,0xEB,0x59,0x00,0x00,0xF0,0xB5,0x25,0x4B,
+0x87,0xB0,0x1B,0x78,0x00,0x2B,0x2B,0xD1,0x23,0x4A,0x24,0x4B,0x90,0x7C,0x1B,0x78,
+0x04,0x90,0xD2,0x7E,0x22,0x4D,0x52,0xB2,0x92,0xB2,0x05,0x92,0x21,0x4A,0x1D,0xE0,
+0x01,0x3B,0x21,0x4C,0xDB,0xB2,0xE1,0x5C,0x04,0x9F,0xB9,0x42,0x16,0xD1,0x59,0x00,
+0x88,0x5A,0x00,0x28,0x07,0xD0,0x6E,0x5A,0x6F,0x46,0x34,0xB2,0xA4,0x46,0x14,0x24,
+0xE7,0x5F,0xBC,0x45,0x05,0xDA,0x59,0x00,0x6E,0x5A,0xF6,0x00,0x80,0x1B,0x50,0x52,
+0x01,0xE0,0x80,0x1B,0x88,0x52,0x14,0x4F,0x00,0x21,0xF9,0x54,0x00,0x2B,0xDF,0xD1,
+0x0E,0x4B,0x12,0x4C,0x19,0x78,0x0F,0x48,0x0B,0x1C,0x05,0xE0,0x01,0x3B,0xDB,0xB2,
+0x5A,0x00,0x15,0x5A,0xED,0x08,0x15,0x53,0x00,0x2B,0xF7,0xD1,0x0C,0x4A,0x12,0x78,
+0x00,0x2A,0x05,0xD0,0x02,0x20,0x00,0x93,0x08,0x4A,0x03,0x1C,0xFE,0xF7,0x0E,0xFD,
+0x07,0xB0,0xF0,0xBD,0x30,0x11,0x00,0x20,0x48,0x0D,0x00,0x20,0x7C,0x09,0x00,0x20,
+0x3C,0x0D,0x00,0x20,0x14,0x02,0x00,0x20,0xA4,0x0A,0x00,0x20,0x54,0x11,0x00,0x20,
+0xEB,0x01,0x00,0x20,0x10,0xB5,0x09,0x49,0x50,0x22,0x09,0x48,0x00,0xF0,0xE2,0xF9,
+0x08,0x4C,0x09,0x49,0x20,0x1C,0x42,0x22,0x00,0xF0,0xDC,0xF9,0x07,0x4B,0xA2,0x7B,
+0x1A,0x60,0xE3,0x7D,0xE3,0x76,0x23,0x7E,0x23,0x77,0x10,0xBD,0x4A,0x74,0x00,0x00,
+0x48,0x0D,0x00,0x20,0xAE,0x09,0x00,0x20,0x08,0x74,0x00,0x00,0x50,0x11,0x00,0x20,
+0x08,0xB5,0x04,0x49,0x04,0x4B,0x41,0x43,0x04,0x48,0xC9,0x18,0x00,0xF0,0x60,0xF9,
+0xC0,0xB2,0x08,0xBD,0x44,0xFE,0xFF,0xFF,0xFE,0x24,0x02,0x00,0x40,0x42,0x0F,0x00,
+0x10,0xB5,0x15,0x4C,0x00,0x23,0x23,0x71,0x03,0x23,0x63,0x71,0x02,0x23,0x23,0x72,
+0x12,0x4B,0x98,0x78,0x02,0x38,0x03,0x28,0x1D,0xD8,0x00,0xF0,0xE7,0xF8,0x0B,0x04,
+0x02,0x14,0xC7,0x20,0x00,0xE0,0xD7,0x20,0xE0,0x70,0xFF,0xF7,0xD9,0xFF,0x02,0x23,
+0x20,0x70,0x0E,0xE0,0xF4,0x20,0xE0,0x70,0xFF,0xF7,0xD2,0xFF,0x02,0x23,0x20,0x70,
+0xA3,0x71,0x01,0x23,0x06,0xE0,0xF4,0x20,0xE0,0x70,0xFF,0xF7,0xC9,0xFF,0x01,0x23,
+0x20,0x70,0xA3,0x71,0xE3,0x71,0x10,0xBD,0xAA,0x0A,0x00,0x20,0x48,0x0D,0x00,0x20,
+0xF0,0xB5,0x59,0x4B,0x87,0xB0,0x1A,0x68,0x58,0x4B,0x08,0x2A,0x01,0xD1,0x01,0x22,
+0x00,0xE0,0x00,0x22,0x1A,0x70,0x56,0x4B,0x56,0x4C,0x01,0x33,0xDB,0x7F,0x00,0x2B,
+0x00,0xD1,0xE3,0x71,0x23,0x78,0x01,0x25,0xA2,0x79,0x28,0x1C,0xD9,0x00,0x90,0x40,
+0x82,0xB2,0xCB,0x1A,0x53,0x43,0x50,0x4E,0xDB,0x10,0xDB,0xB2,0x33,0x80,0x22,0x78,
+0xFA,0x23,0xA0,0x79,0x9B,0x00,0x53,0x43,0x4C,0x4F,0x29,0x1C,0x81,0x40,0x88,0xB2,
+0xB9,0x88,0x58,0x43,0x09,0x01,0x00,0xF0,0xFB,0xF8,0xC1,0xB2,0x71,0x80,0x23,0x78,
+0x2D,0x22,0xA0,0x79,0x53,0x43,0x2A,0x1C,0x82,0x40,0x90,0xB2,0x58,0x43,0x6B,0x46,
+0x19,0x81,0x09,0x01,0x00,0xF0,0xEC,0xF8,0xC0,0xB2,0xB0,0x80,0x23,0x7A,0xB9,0x79,
+0xD8,0x00,0x18,0x1A,0xA9,0x40,0xC0,0x00,0x49,0x19,0xE0,0x30,0x48,0x43,0xA2,0x79,
+0x6C,0x46,0x08,0x21,0x61,0x5E,0x90,0x40,0x49,0x01,0x00,0xF0,0x8B,0xF8,0x34,0x4A,
+0xF0,0x80,0x11,0x7D,0xD0,0x7D,0x36,0x4B,0x08,0x18,0xC0,0xB2,0x18,0x70,0x17,0x7E,
+0x5F,0x70,0x56,0x7E,0x01,0x96,0x96,0x7F,0x01,0x9C,0x66,0x43,0xF4,0xB2,0x20,0x18,
+0xC0,0xB2,0x98,0x70,0x02,0x90,0x96,0x7E,0x03,0x96,0x03,0x98,0xD6,0x7F,0x46,0x43,
+0xF0,0xB2,0xC7,0x19,0xFF,0xB2,0xDF,0x70,0xD6,0x7E,0xB4,0x46,0x61,0x44,0x61,0x18,
+0xC9,0xB2,0x19,0x71,0x16,0x7F,0x80,0x19,0x02,0x9E,0xC0,0xB2,0x74,0x1A,0x3F,0x1A,
+0xE6,0xB2,0xFF,0xB2,0x58,0x71,0x9E,0x71,0xDF,0x71,0xBC,0x46,0x57,0x7D,0xEC,0x1B,
+0x04,0x97,0x27,0x1C,0x77,0x43,0xFF,0xB2,0x05,0x97,0x9F,0x73,0x97,0x7D,0x64,0x46,
+0xED,0x1B,0x65,0x43,0x47,0x43,0x04,0x9C,0x5F,0x74,0x4C,0x43,0x18,0x72,0x6F,0x46,
+0x14,0x20,0xC7,0x5D,0xED,0xB2,0xE4,0xB2,0xDD,0x73,0x1C,0x74,0x5D,0x72,0x99,0x72,
+0xDF,0x72,0x1E,0x73,0x5C,0x73,0x51,0x7F,0x12,0x4B,0x00,0x29,0x03,0xD0,0x69,0x46,
+0x09,0x79,0x19,0x70,0x03,0xE0,0x01,0x9C,0x03,0x9E,0x74,0x43,0x1C,0x70,0x93,0x1C,
+0x03,0x32,0x02,0x9F,0xD2,0x7F,0xDB,0x7F,0xBA,0x18,0x5B,0xB2,0x01,0x32,0x9A,0x40,
+0x09,0x4B,0x07,0xB0,0x1A,0x60,0xF0,0xBD,0x50,0x11,0x00,0x20,0xFA,0x02,0x00,0x20,
+0xAE,0x09,0x00,0x20,0xAA,0x0A,0x00,0x20,0x04,0x02,0x00,0x20,0x48,0x0D,0x00,0x20,
+0x0A,0x03,0x00,0x20,0x7C,0x09,0x00,0x20,0x18,0x09,0x00,0x20,0x02,0xB4,0x71,0x46,
+0x49,0x08,0x49,0x00,0x09,0x5C,0x49,0x00,0x8E,0x44,0x02,0xBC,0x70,0x47,0xC0,0x46,
+0x03,0xB4,0x71,0x46,0x49,0x08,0x40,0x00,0x49,0x00,0x09,0x5A,0x49,0x00,0x8E,0x44,
+0x03,0xBC,0x70,0x47,0x00,0x29,0x34,0xD0,0x01,0x23,0x00,0x22,0x10,0xB4,0x88,0x42,
+0x2C,0xD3,0x01,0x24,0x24,0x07,0xA1,0x42,0x04,0xD2,0x81,0x42,0x02,0xD2,0x09,0x01,
+0x1B,0x01,0xF8,0xE7,0xE4,0x00,0xA1,0x42,0x04,0xD2,0x81,0x42,0x02,0xD2,0x49,0x00,
+0x5B,0x00,0xF8,0xE7,0x88,0x42,0x01,0xD3,0x40,0x1A,0x1A,0x43,0x4C,0x08,0xA0,0x42,
+0x02,0xD3,0x00,0x1B,0x5C,0x08,0x22,0x43,0x8C,0x08,0xA0,0x42,0x02,0xD3,0x00,0x1B,
+0x9C,0x08,0x22,0x43,0xCC,0x08,0xA0,0x42,0x02,0xD3,0x00,0x1B,0xDC,0x08,0x22,0x43,
+0x00,0x28,0x03,0xD0,0x1B,0x09,0x01,0xD0,0x09,0x09,0xE3,0xE7,0x10,0x1C,0x10,0xBC,
+0x70,0x47,0x00,0x28,0x01,0xD0,0x00,0x20,0xC0,0x43,0x07,0xB4,0x02,0x48,0x02,0xA1,
+0x40,0x18,0x02,0x90,0x03,0xBD,0xC0,0x46,0xD9,0x00,0x00,0x00,0x00,0x29,0xF0,0xD0,
+0x03,0xB5,0xFF,0xF7,0xB9,0xFF,0x0E,0xBC,0x42,0x43,0x89,0x1A,0x18,0x47,0xC0,0x46,
+0x00,0x29,0x41,0xD0,0x10,0xB4,0x04,0x1C,0x4C,0x40,0xA4,0x46,0x01,0x23,0x00,0x22,
+0x00,0x29,0x00,0xD5,0x49,0x42,0x00,0x28,0x00,0xD5,0x40,0x42,0x88,0x42,0x2C,0xD3,
+0x01,0x24,0x24,0x07,0xA1,0x42,0x04,0xD2,0x81,0x42,0x02,0xD2,0x09,0x01,0x1B,0x01,
+0xF8,0xE7,0xE4,0x00,0xA1,0x42,0x04,0xD2,0x81,0x42,0x02,0xD2,0x49,0x00,0x5B,0x00,
+0xF8,0xE7,0x88,0x42,0x01,0xD3,0x40,0x1A,0x1A,0x43,0x4C,0x08,0xA0,0x42,0x02,0xD3,
+0x00,0x1B,0x5C,0x08,0x22,0x43,0x8C,0x08,0xA0,0x42,0x02,0xD3,0x00,0x1B,0x9C,0x08,
+0x22,0x43,0xCC,0x08,0xA0,0x42,0x02,0xD3,0x00,0x1B,0xDC,0x08,0x22,0x43,0x00,0x28,
+0x03,0xD0,0x1B,0x09,0x01,0xD0,0x09,0x09,0xE3,0xE7,0x10,0x1C,0x64,0x46,0x00,0x2C,
+0x00,0xD5,0x40,0x42,0x10,0xBC,0x70,0x47,0x00,0x28,0x06,0xD0,0x03,0xDB,0x00,0x20,
+0xC0,0x43,0x40,0x08,0x01,0xE0,0x80,0x20,0x00,0x06,0x07,0xB4,0x02,0x48,0x02,0xA1,
+0x40,0x18,0x02,0x90,0x03,0xBD,0xC0,0x46,0x19,0x00,0x00,0x00,0x00,0x29,0xEB,0xD0,
+0x03,0xB5,0xFF,0xF7,0xA7,0xFF,0x0E,0xBC,0x42,0x43,0x89,0x1A,0x18,0x47,0xC0,0x46,
+0x70,0x47,0xC0,0x46,0xF0,0xB5,0x05,0x1C,0x0F,0x2A,0x2F,0xD9,0x0B,0x1C,0x03,0x43,
+0x05,0x1C,0x9C,0x07,0x2C,0xD1,0x0C,0x1C,0x03,0x1C,0x15,0x1C,0x26,0x68,0x10,0x3D,
+0x1E,0x60,0x66,0x68,0x5E,0x60,0xA6,0x68,0x9E,0x60,0xE6,0x68,0x10,0x34,0xDE,0x60,
+0x10,0x33,0x0F,0x2D,0xF2,0xD8,0x13,0x1C,0x10,0x3B,0x1B,0x09,0x01,0x33,0x1B,0x01,
+0xC5,0x18,0xC9,0x18,0x0F,0x23,0x1A,0x40,0x03,0x2A,0x0F,0xD9,0x0E,0x1C,0x2C,0x1C,
+0x13,0x1C,0x80,0xCE,0x04,0x3B,0x80,0xC4,0x03,0x2B,0xFA,0xD8,0x13,0x1F,0x9B,0x08,
+0x01,0x33,0x9B,0x00,0x03,0x24,0x22,0x40,0xC9,0x18,0xED,0x18,0x00,0x2A,0x05,0xD0,
+0x00,0x23,0xCC,0x5C,0xEC,0x54,0x01,0x33,0x93,0x42,0xFA,0xD1,0xF0,0xBD,0xC0,0x46,
+0x50,0x61,0x6C,0x6D,0x20,0x49,0x6E,0x69,0x74,0x00,0x27,0x45,0x6E,0x74,0x65,0x72,
+0x27,0x20,0x4E,0x00,0x4E,0x2D,0x6C,0x65,0x73,0x73,0x21,0x00,0x27,0x45,0x78,0x69,
+0x74,0x27,0x20,0x4E,0x00,0x4E,0x20,0x53,0x2F,0x50,0x00,0x53,0x6C,0x65,0x65,0x70,
+0x00,0x53,0x2D,0x72,0x65,0x73,0x65,0x74,0x00,0x46,0x41,0x53,0x54,0x00,0x49,0x64,
+0x6C,0x65,0x00,0x41,0x63,0x74,0x69,0x76,0x65,0x00,0x53,0x70,0x65,0x63,0x74,0x00,
+0x53,0x74,0x61,0x63,0x6B,0x21,0x00,0x52,0x45,0x47,0x56,0x41,0x4C,0x00,0x44,0x65,
+0x6C,0x61,0x79,0x00,0x4F,0x53,0x43,0x00,0x4E,0x4F,0x49,0x53,0x45,0x00,0x54,0x6F,
+0x75,0x63,0x68,0x20,0x4F,0x6E,0x00,0x54,0x6F,0x75,0x63,0x68,0x20,0x4F,0x46,0x46,
+0x00,0x4C,0x54,0x5F,0x50,0x52,0x4F,0x46,0x49,0x4C,0x49,0x4E,0x47,0x00,0x46,0x69,
+0x78,0x65,0x64,0x00,0x47,0x2D,0x41,0x66,0x74,0x65,0x72,0x00,0x3D,0x48,0x6F,0x76,
+0x6F,0x72,0x00,0x12,0x0E,0x07,0x0D,0x0A,0x12,0x04,0x06,0x0C,0x09,0x12,0x0F,0x05,
+0x11,0x08,0x12,0x00,0x01,0x10,0x02,0x45,0x72,0x72,0x00,0x4B,0x65,0x79,0x20,0x52,
+0x00,0x52,0x45,0x46,0x20,0x49,0x4E,0x49,0x54,0x00,0x43,0x6D,0x44,0x65,0x6C,0x74,
+0x61,0x20,0x52,0x65,0x66,0x2F,0x52,0x65,0x61,0x6C,0x00,0x52,0x61,0x77,0x00,0x4D,
+0x41,0x58,0x20,0x49,0x00,0x43,0x4D,0x5F,0x44,0x45,0x4C,0x54,0x41,0x5F,0x4D,0x41,
+0x58,0x5F,0x4D,0x49,0x4E,0x00,0x54,0x78,0x6C,0x65,0x73,0x73,0x00,0x44,0x69,0x66,
+0x66,0x00,0x44,0x49,0x46,0x46,0x2F,0x4E,0x00,0x42,0x69,0x67,0x20,0x47,0x72,0x61,
+0x64,0x00,0x4E,0x65,0x67,0x2D,0x45,0x64,0x67,0x65,0x00,0x52,0x65,0x66,0x00,0x00,
+0x2D,0x49,0x00,0x00,0xFF,0x00,0x00,0x01,0x00,0xFF,0x01,0x00,0xFF,0x00,0x00,0x00,
+0x01,0x00,0x00,0x00,0xA0,0x0D,0x00,0x20,0x28,0x02,0x00,0x20,0x0C,0x00,0x00,0x00,
+0x54,0x11,0x00,0x20,0x01,0x02,0xFF,0x00,0x01,0x04,0x00,0x04,0xFF,0xFF,0xFF,0xFF,
+0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
+0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
+0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
+0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
+0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
+0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
+0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
+0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
+0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
+0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
+0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
+0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
+0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
+0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
+0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
+0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
+0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
+0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
+0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
+0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
+0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
+0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
+0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
+0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
+0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
+0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
+0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
+0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
+0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
+0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x02,0x45,
+0x4D,0x31,0x48,0x30,0x50,0x52,0x34,0x35,0x08,0xB5,0x00,0x28,0x02,0xD0,0x01,0x28,
+0x24,0xD1,0x07,0xE0,0x12,0x4B,0x13,0x4A,0x1A,0x60,0x13,0x4B,0x58,0x60,0x98,0x60,
+0xD8,0x60,0x1B,0xE0,0x11,0x4B,0x1B,0x68,0x10,0x2B,0x15,0xD1,0x10,0x4A,0x11,0x4B,
+0x1A,0x60,0x11,0x4A,0x11,0x4B,0x1A,0x60,0x11,0x4A,0x12,0x4B,0x1A,0x60,0x12,0x4A,
+0x12,0x4B,0x1A,0x60,0x12,0x4A,0x13,0x4B,0x1A,0x60,0x13,0x4A,0x13,0x4B,0x1A,0x60,
+0x13,0x4A,0x14,0x4B,0x1A,0x60,0x01,0xE0,0xFE,0xF7,0xC8,0xF8,0x08,0xBD,0xC0,0x46,
+0xF8,0x01,0x00,0x20,0xC1,0x68,0x00,0x00,0xF8,0x08,0x00,0x20,0x50,0x11,0x00,0x20,
+0xA9,0x5C,0x00,0x00,0x68,0x00,0x00,0x20,0x81,0x68,0x00,0x00,0x6C,0x00,0x00,0x20,
+0x2D,0x66,0x00,0x00,0x00,0x02,0x00,0x20,0x9D,0x71,0x00,0x00,0x18,0x00,0x00,0x20,
+0x05,0x62,0x00,0x00,0x1C,0x00,0x00,0x20,0xE9,0x61,0x00,0x00,0x20,0x00,0x00,0x20,
+0xAB,0x5C,0x00,0x00,0x24,0x00,0x00,0x20,0x70,0x47,0xA0,0x23,0xDB,0x05,0x01,0x22,
+0x1A,0x72,0x09,0x49,0x10,0x22,0x1A,0x72,0x00,0x22,0x0A,0x70,0x1A,0x72,0x07,0x4B,
+0x80,0x22,0x19,0x68,0x52,0x00,0x0A,0x43,0x1A,0x60,0x1A,0x68,0x80,0x23,0xDB,0x05,
+0x99,0x68,0x9A,0x60,0x70,0x47,0xC0,0x46,0x0C,0x00,0x00,0x20,0x14,0x00,0x00,0x20,
+0x00,0xB5,0x5A,0x28,0x07,0xD0,0x05,0x4B,0x59,0x28,0x01,0xDD,0xB4,0x22,0x10,0x1A,
+0x40,0x00,0x18,0x5A,0x00,0xE0,0x02,0x48,0x00,0xBD,0xC0,0x46,0xE4,0x72,0x00,0x00,
+0xFF,0xFF,0x00,0x00,0x00,0xB5,0x00,0x28,0x0E,0xD0,0xB4,0x28,0x0E,0xD0,0x08,0x4B,
+0x5A,0x28,0x04,0xDC,0x5A,0x22,0x10,0x1A,0x40,0x00,0x18,0x5A,0x07,0xE0,0x5A,0x38,
+0x40,0x00,0x18,0x5A,0x40,0x42,0x02,0xE0,0x02,0x48,0x00,0xE0,0x02,0x48,0x00,0xBD,
+0xE4,0x72,0x00,0x00,0xFF,0xFF,0x00,0x00,0x01,0x00,0xFF,0xFF,0xF0,0xB5,0x9B,0xB0,
+0x0E,0x93,0x11,0x90,0x0B,0x91,0x08,0x78,0xC9,0x4B,0x03,0x90,0x49,0x78,0x16,0x1C,
+0x49,0xB2,0x12,0x91,0x0A,0x20,0x1A,0x5E,0x00,0x25,0x13,0x92,0xC5,0x4A,0x2C,0x1C,
+0x28,0x20,0x11,0x5E,0x2F,0x1C,0x14,0x91,0x59,0x68,0x15,0x91,0xC2,0x49,0x09,0x68,
+0x0D,0x91,0x08,0x21,0x58,0x5E,0x1B,0x68,0x17,0x90,0x26,0x21,0x50,0x5E,0x19,0x93,
+0x18,0x90,0x04,0x95,0x06,0x95,0x05,0x95,0x09,0x95,0x0A,0x95,0x08,0x95,0x95,0xE0,
+0x03,0x9A,0x14,0x98,0x15,0x99,0x50,0x43,0xFF,0xF7,0xFA,0xFC,0x13,0x9B,0x00,0xB2,
+0x18,0x18,0x33,0x68,0x0B,0x99,0xC3,0x1A,0x0B,0x98,0x0C,0x93,0x80,0x78,0x03,0x9A,
+0x02,0x90,0xC9,0x78,0x01,0x32,0x49,0xB2,0x93,0x01,0x16,0x91,0x0F,0x92,0x10,0x93,
+0x75,0xE0,0x02,0x9A,0x10,0x99,0x02,0x32,0x88,0x18,0xAC,0x49,0x43,0x5C,0x0E,0x2B,
+0x27,0xD9,0x04,0x23,0x94,0x46,0xAA,0x48,0x01,0x3B,0xDB,0xB2,0xC2,0x56,0x03,0x99,
+0x8A,0x18,0xA8,0x49,0x01,0x32,0xC8,0x56,0x02,0x99,0x92,0x01,0x08,0x18,0x02,0x30,
+0xA2,0x49,0x10,0x18,0x0A,0x5C,0x01,0x3A,0xD2,0xB2,0x0D,0x2A,0x0E,0xD8,0xA2,0x48,
+0x0E,0x99,0x82,0x56,0x8A,0x42,0x09,0xD1,0x10,0x9B,0x62,0x46,0x9A,0x18,0x9F,0x48,
+0x52,0x00,0x13,0x5A,0x0D,0x99,0x5B,0x1A,0x07,0x93,0x12,0xE0,0x00,0x2B,0xDA,0xD1,
+0x41,0xE0,0x00,0x2B,0x3F,0xD0,0x98,0x4A,0x0E,0x99,0xD3,0x18,0x01,0x3B,0x1B,0x78,
+0x5B,0xB2,0x8B,0x42,0x37,0xD1,0x95,0x4A,0x40,0x00,0x83,0x5A,0x0D,0x98,0x1B,0x1A,
+0x07,0x93,0x07,0x99,0x00,0x29,0x2E,0xD0,0x02,0x9A,0x18,0x98,0x19,0x99,0x50,0x43,
+0xFF,0xF7,0x9E,0xFC,0x07,0x9A,0x17,0x9B,0x08,0x99,0x00,0xB2,0x89,0x18,0x18,0x18,
+0x73,0x68,0x08,0x91,0x0C,0x99,0xC0,0x1A,0x13,0x1C,0x4B,0x43,0x42,0x43,0x00,0x28,
+0x0B,0xDC,0x00,0x29,0x04,0xDD,0xFF,0x18,0x0A,0x9B,0x9B,0x1A,0x0A,0x93,0x12,0xE0,
+0x09,0x98,0xE4,0x1A,0x80,0x1A,0x09,0x90,0x0D,0xE0,0x0C,0x99,0x00,0x29,0x06,0xDC,
+0x05,0x98,0x06,0x99,0xC0,0x1A,0x89,0x18,0x05,0x90,0x06,0x91,0x03,0xE0,0x04,0x98,
+0xAD,0x18,0xC0,0x18,0x04,0x90,0x02,0x9B,0x01,0x33,0xDB,0xB2,0x02,0x93,0x02,0x99,
+0x16,0x9A,0x91,0x42,0x85,0xDD,0x0F,0xAB,0x1B,0x78,0x03,0x93,0x03,0x98,0x12,0x99,
+0x88,0x42,0x00,0xDC,0x64,0xE7,0x05,0x9A,0x04,0x98,0x94,0x46,0x63,0x46,0x3A,0x1B,
+0x19,0x1A,0x02,0x97,0xD1,0x42,0x02,0xD4,0x00,0x21,0x07,0x91,0x0D,0xE0,0x06,0x9A,
+0x06,0x95,0x15,0x1C,0x04,0x9A,0x09,0x99,0x04,0x93,0x0A,0x9B,0x05,0x92,0x27,0x1C,
+0x01,0x22,0x02,0x9C,0x0A,0x91,0x09,0x93,0x07,0x92,0x05,0x9B,0x04,0x99,0xF8,0x18,
+0x00,0x19,0x40,0x18,0x08,0x99,0xFF,0xF7,0x43,0xFC,0x02,0x90,0x00,0x28,0x64,0xD0,
+0x0A,0x9A,0x06,0x9B,0x09,0x99,0xD0,0x18,0x40,0x18,0x40,0x19,0x08,0x99,0xFF,0xF7,
+0x37,0xFC,0x03,0x90,0x03,0x9A,0x5A,0x20,0x00,0x2A,0x56,0xD0,0x02,0x9B,0x2D,0x20,
+0x9A,0x42,0x52,0xD0,0x93,0x42,0x24,0xDA,0x11,0x1C,0x98,0x01,0xFF,0xF7,0x28,0xFC,
+0x05,0x1C,0x05,0x98,0x04,0x99,0x3F,0x1B,0x3F,0x18,0x78,0x1A,0xC3,0x43,0xDB,0x17,
+0x18,0x40,0x08,0x99,0xFF,0xF7,0x1C,0xFC,0x03,0x99,0x80,0x01,0xFF,0xF7,0x18,0xFC,
+0x4B,0x4B,0x1A,0x1C,0x3F,0x28,0x00,0xDD,0x3F,0x20,0x1B,0x5C,0x3F,0x2D,0x00,0xDD,
+0x3F,0x25,0x51,0x5D,0x2D,0x20,0x41,0x1A,0xC9,0x18,0x58,0x43,0xFF,0xF7,0x08,0xFC,
+0x2B,0xE0,0x03,0x9A,0x02,0x99,0x90,0x01,0xFF,0xF7,0x02,0xFC,0x3F,0x28,0x00,0xDD,
+0x3F,0x20,0x3F,0x4B,0x09,0x99,0x1C,0x5C,0x0A,0x9B,0x06,0x9A,0x58,0x1A,0x80,0x18,
+0x40,0x1B,0xC3,0x43,0xDB,0x17,0x08,0x99,0x18,0x40,0xFF,0xF7,0xF1,0xFB,0x02,0x99,
+0x80,0x01,0xFF,0xF7,0xED,0xFB,0x3F,0x28,0x00,0xDD,0x3F,0x20,0x34,0x4B,0x5A,0x22,
+0x1B,0x5C,0x2D,0x20,0xD1,0x1A,0x00,0x1B,0x12,0x1B,0x48,0x43,0x5A,0x43,0x87,0x23,
+0x1C,0x1B,0x80,0x18,0x61,0x1A,0xFF,0xF7,0xDB,0xFB,0x07,0x9B,0x00,0x2B,0x00,0xD0,
+0x40,0x42,0x11,0x99,0x5A,0x24,0x24,0x1A,0x08,0x70,0x20,0x1C,0xFF,0xF7,0x8A,0xFE,
+0x09,0x90,0x20,0x1C,0xFF,0xF7,0x74,0xFE,0x0B,0x9A,0x0A,0x90,0x01,0x23,0xD3,0x56,
+0x17,0x78,0x0F,0x93,0x1A,0x4B,0x1B,0x4A,0x0A,0x21,0x58,0x5E,0x00,0x24,0x10,0x90,
+0x28,0x21,0x50,0x5E,0x18,0x49,0x12,0x90,0x09,0x68,0x58,0x68,0x07,0x91,0x13,0x90,
+0x08,0x20,0x19,0x5E,0x1B,0x68,0x15,0x91,0x26,0x20,0x11,0x5E,0x17,0x93,0x16,0x91,
+0x05,0x94,0x04,0x94,0x02,0x94,0xA8,0xE0,0x12,0x98,0x13,0x99,0x78,0x43,0xFF,0xF7,
+0xA7,0xFB,0x10,0x99,0x00,0xB2,0x33,0x68,0x08,0x18,0xC3,0x1A,0x03,0x93,0x0B,0x9A,
+0x03,0x99,0x03,0x23,0x0A,0x98,0xD3,0x56,0x95,0x78,0x09,0x9A,0x48,0x43,0x4A,0x43,
+0x14,0x93,0x7B,0x1C,0x18,0x90,0x98,0x01,0x19,0x92,0x0C,0x93,0x0D,0x90,0x87,0xE0,
+0x24,0x09,0x00,0x20,0xAE,0x09,0x00,0x20,0x38,0x0D,0x00,0x20,0x00,0x20,0x00,0x40,
+0xF8,0x59,0x00,0x00,0xF4,0x59,0x00,0x00,0xEC,0x02,0x00,0x20,0x00,0x40,0x00,0x40,
+0xA4,0x72,0x00,0x00,0x0D,0x99,0xAA,0x1C,0x88,0x18,0x4E,0x49,0x43,0x5C,0x0E,0x2B,
+0x25,0xD9,0x04,0x23,0x94,0x46,0x4C,0x48,0x01,0x3B,0xDB,0xB2,0x4B,0x49,0xC2,0x56,
+0xC8,0x56,0xBA,0x18,0x01,0x32,0x28,0x18,0x92,0x01,0x02,0x30,0x45,0x49,0x10,0x18,
+0x0A,0x5C,0x01,0x3A,0xD2,0xB2,0x0D,0x2A,0x0E,0xD8,0x45,0x48,0x0E,0x99,0x82,0x56,
+0x8A,0x42,0x09,0xD1,0x0D,0x9B,0x62,0x46,0x9A,0x18,0x42,0x48,0x52,0x00,0x13,0x5A,
+0x07,0x99,0x5B,0x1A,0x06,0x93,0x12,0xE0,0x00,0x2B,0xDC,0xD1,0x46,0xE0,0x00,0x2B,
+0x44,0xD0,0x3B,0x4A,0x0E,0x99,0xD3,0x18,0x01,0x3B,0x1B,0x78,0x5B,0xB2,0x8B,0x42,
+0x3C,0xD1,0x38,0x4A,0x40,0x00,0x83,0x5A,0x07,0x98,0x1B,0x1A,0x06,0x93,0x06,0x99,
+0x00,0x29,0x33,0xD0,0x16,0x98,0x17,0x99,0x68,0x43,0xFF,0xF7,0x39,0xFB,0x15,0x9A,
+0x00,0xB2,0x73,0x68,0x10,0x18,0x1B,0x1A,0x01,0x93,0x01,0x98,0x03,0x9B,0x06,0x9A,
+0x09,0x99,0x5A,0x43,0x41,0x43,0x06,0x9B,0x43,0x43,0x18,0x98,0x09,0x1A,0x00,0x29,
+0x04,0xDD,0x05,0x99,0xE4,0x18,0x89,0x18,0x05,0x91,0x03,0xE0,0x05,0x98,0xE4,0x1A,
+0x80,0x1A,0x05,0x90,0x01,0x99,0x0A,0x98,0x48,0x43,0x19,0x99,0x40,0x18,0x00,0x28,
+0x06,0xDD,0x02,0x98,0x04,0x99,0x80,0x18,0xC9,0x18,0x02,0x90,0x04,0x91,0x05,0xE0,
+0x02,0x98,0x04,0x99,0x80,0x1A,0xC9,0x1A,0x02,0x90,0x04,0x91,0x01,0x35,0xED,0xB2,
+0x14,0x9A,0x95,0x42,0x86,0xDD,0x0C,0xAB,0x1F,0x78,0x0F,0x98,0x87,0x42,0x00,0xDC,
+0x52,0xE7,0x08,0x99,0x02,0x98,0xFF,0xF7,0xFB,0xFA,0x08,0x99,0x07,0x1C,0x04,0x98,
+0xFF,0xF7,0xF6,0xFA,0x08,0x99,0x05,0x1C,0x05,0x98,0xFF,0xF7,0xF1,0xFA,0x08,0x99,
+0x06,0x1C,0x20,0x1C,0xFF,0xF7,0xEC,0xFA,0x7F,0x43,0x76,0x43,0x6D,0x43,0x40,0x43,
+0x11,0x99,0x7D,0x19,0x30,0x18,0xAD,0x11,0x80,0x11,0x1B,0xB0,0x4D,0x60,0x88,0x60,
+0xF0,0xBD,0xC0,0x46,0x00,0x20,0x00,0x40,0xF8,0x59,0x00,0x00,0xF4,0x59,0x00,0x00,
+0xEC,0x02,0x00,0x20,0x00,0x40,0x00,0x40,0x08,0xB5,0x05,0x4B,0x1B,0x88,0xDB,0xB2,
+0x10,0x2B,0x01,0xD0,0xAF,0x2B,0x01,0xD1,0xFD,0xF7,0x8A,0xF9,0x08,0xBD,0xC0,0x46,
+0x28,0x00,0x00,0x20,0x38,0xB5,0xC1,0x4A,0x13,0x88,0x1B,0xB2,0xAE,0x2B,0x00,0xD1,
+0x59,0xE1,0x3B,0xDC,0x0C,0x2B,0x00,0xD1,0xD2,0xE0,0x1B,0xDC,0x05,0x2B,0x00,0xD1,
+0xA6,0xE0,0x08,0xDC,0x03,0x2B,0x00,0xD1,0x8F,0xE0,0x00,0xDD,0x96,0xE0,0x02,0x2B,
+0x00,0xD0,0xA5,0xE1,0x7C,0xE0,0x09,0x2B,0x00,0xD1,0xA4,0xE0,0x03,0xDC,0x06,0x2B,
+0x00,0xD0,0x9D,0xE1,0x99,0xE0,0x0A,0x2B,0x00,0xD1,0xAC,0xE0,0x0B,0x2B,0x00,0xD0,
+0x96,0xE1,0xAD,0xE0,0x31,0x2B,0x00,0xD1,0x95,0xE0,0x08,0xDC,0x10,0x2B,0x5A,0xD0,
+0x30,0x2B,0x00,0xD1,0x9A,0xE0,0x0F,0x2B,0x00,0xD0,0x89,0xE1,0x48,0xE0,0x62,0x2B,
+0x00,0xD1,0x81,0xE1,0x03,0xDC,0x61,0x2B,0x00,0xD0,0x81,0xE1,0x77,0xE1,0x64,0x2B,
+0x00,0xD1,0x6F,0xE1,0xA8,0x2B,0x00,0xD0,0x7A,0xE1,0x5B,0xE1,0xF4,0x2B,0x00,0xD1,
+0xBC,0xE0,0x19,0xDC,0xEF,0x2B,0x00,0xD1,0x2E,0xE1,0x09,0xDC,0xBF,0x2B,0x00,0xD1,
+0x50,0xE1,0xEE,0x2B,0x00,0xD1,0x23,0xE1,0xAF,0x2B,0x00,0xD0,0x68,0xE1,0x11,0xE1,
+0xF1,0x2B,0x00,0xD1,0x91,0xE0,0x00,0xDA,0x8C,0xE0,0xF2,0x2B,0x00,0xD1,0x94,0xE0,
+0xF3,0x2B,0x00,0xD0,0x5C,0xE1,0x99,0xE0,0xF9,0x2B,0x00,0xD1,0xCD,0xE0,0x0B,0xDC,
+0xF6,0x2B,0x00,0xD1,0xAD,0xE0,0x00,0xDA,0xA1,0xE0,0xF7,0x2B,0x00,0xD1,0xAF,0xE0,
+0xF8,0x2B,0x00,0xD0,0x4C,0xE1,0xB7,0xE0,0xFB,0x2B,0x00,0xD1,0xCF,0xE0,0x00,0xDA,
+0xC4,0xE0,0xFC,0x2B,0x00,0xD1,0xD3,0xE0,0xFD,0x2B,0x00,0xD0,0x40,0xE1,0xD8,0xE0,
+0x83,0x4C,0x23,0x68,0x00,0x2B,0x01,0xD1,0xFD,0xF7,0x02,0xF9,0x22,0x68,0x81,0x4B,
+0xD2,0x00,0x1A,0x70,0x34,0xE1,0x80,0x49,0x80,0x4A,0x00,0x23,0x08,0x78,0x7D,0x4D,
+0xC0,0x18,0x14,0x5C,0x58,0x19,0x01,0x33,0x04,0x70,0x08,0x2B,0xF6,0xD1,0x27,0xE1,
+0x7B,0x4A,0x0F,0x23,0x26,0x20,0x11,0x5E,0x28,0x25,0x52,0x5F,0x09,0x11,0x12,0x12,
+0x99,0x43,0x13,0x40,0x73,0x4A,0xCB,0x18,0x13,0x70,0x70,0x4B,0x1A,0x88,0x03,0x23,
+0x12,0xB2,0x9A,0x1A,0x72,0x4B,0x19,0x8D,0x6E,0x4B,0xD1,0x54,0x6B,0x4B,0x1A,0x88,
+0x04,0x23,0x12,0xB2,0x9A,0x1A,0x6E,0x4B,0xD9,0x8C,0x6A,0x4B,0xD1,0x54,0x07,0xE1,
+0x6C,0x4B,0xDA,0x8C,0x67,0x4B,0x1A,0x70,0x02,0xE1,0x6A,0x4B,0x34,0x33,0x1A,0x78,
+0x64,0x4B,0x1A,0x70,0xFC,0xE0,0x68,0x4B,0x1A,0x78,0x62,0x4B,0x00,0x2A,0x02,0xD0,
+0x02,0x22,0x1A,0x70,0xF4,0xE0,0x01,0x22,0x1A,0x70,0xF1,0xE0,0x62,0x4B,0x1A,0x78,
+0x5C,0x4B,0x1A,0x70,0xEC,0xE0,0x61,0x4B,0x1A,0x78,0x5A,0x4B,0x1A,0x70,0xE7,0xE0,
+0x12,0x88,0x5F,0x4B,0x12,0xB2,0x19,0x78,0x0B,0x23,0x9A,0x1A,0x55,0x4B,0xD1,0x54,
+0x52,0x4B,0x1A,0x88,0x5A,0x4B,0x12,0xB2,0x59,0x78,0x0C,0x23,0x9A,0x1A,0x51,0x4B,
+0xD1,0x54,0xD5,0xE0,0x4F,0x4B,0x42,0x22,0x1A,0x70,0x4C,0x4B,0x01,0x21,0x1A,0x88,
+0xF1,0x23,0x12,0xB2,0x9A,0x1A,0x4B,0x4B,0xD1,0x54,0x48,0x4B,0x1A,0x88,0x4C,0x4B,
+0x12,0xB2,0x59,0x78,0xF2,0x23,0x9A,0x1A,0x46,0x4B,0xD1,0x54,0x43,0x4B,0xBD,0x21,
+0x1A,0x88,0xF3,0x23,0x12,0xB2,0x9A,0x1A,0x42,0x4B,0xD1,0x54,0x3F,0x4B,0x1A,0x88,
+0x48,0x4B,0x12,0xB2,0x19,0x78,0xF4,0x23,0x9A,0x1A,0x3E,0x4B,0xD1,0x54,0x3B,0x4B,
+0x1A,0x88,0x45,0x4B,0x12,0xB2,0x19,0x78,0xF5,0x23,0x9A,0x1A,0x39,0x4B,0xD1,0x54,
+0xA6,0xE0,0x39,0x4B,0x3A,0x4A,0x1B,0x78,0xD3,0x18,0xDA,0x78,0x35,0x4B,0x1A,0x70,
+0x32,0x4B,0x37,0x49,0x1A,0x88,0x34,0x4B,0x12,0xB2,0x1B,0x78,0xCB,0x18,0x19,0x79,
+0xF7,0x23,0x9A,0x1A,0x2F,0x4B,0xD1,0x54,0x2C,0x4B,0x1A,0x88,0x30,0x4B,0x12,0xB2,
+0x59,0x79,0xF8,0x23,0x9A,0x1A,0x2B,0x4B,0xD1,0x54,0x28,0x4B,0x1A,0x88,0x2C,0x4B,
+0x12,0xB2,0x99,0x79,0xF9,0x23,0x9A,0x1A,0x26,0x4B,0xD1,0x54,0x23,0x4B,0x1A,0x88,
+0x27,0x4B,0x12,0xB2,0xD9,0x79,0xFA,0x23,0x9A,0x1A,0x22,0x4B,0xD1,0x54,0x1F,0x4B,
+0x1A,0x88,0x23,0x4B,0x12,0xB2,0x19,0x7A,0xFB,0x23,0x9A,0x1A,0x1D,0x4B,0xD1,0x54,
+0x1A,0x4B,0x1A,0x88,0x1E,0x4B,0x12,0xB2,0x59,0x7A,0xFC,0x23,0x9A,0x1A,0x19,0x4B,
+0xD1,0x54,0x16,0x4B,0x1A,0x88,0x1A,0x4B,0x12,0xB2,0x99,0x7A,0xFD,0x23,0x9A,0x1A,
+0x14,0x4B,0xD1,0x54,0x5C,0xE0,0x1D,0x4B,0x1A,0x78,0x12,0x4B,0x1A,0x70,0xFD,0xF7,
+0x1F,0xF8,0x55,0xE0,0x1A,0x49,0x10,0x4A,0x00,0x23,0x0C,0x68,0x10,0x78,0x0D,0x4D,
+0x20,0x18,0xC4,0x5C,0x58,0x19,0x01,0x33,0x04,0x70,0x08,0x2B,0xF5,0xD1,0x47,0xE0,
+0x0B,0x4B,0x1A,0x7E,0x07,0x4B,0x1A,0x70,0x04,0x4B,0x1A,0x88,0x08,0x4B,0x12,0xB2,
+0xD9,0x7D,0xEF,0x23,0x9A,0x1A,0x03,0x4B,0xD1,0x54,0x39,0xE0,0x28,0x00,0x00,0x20,
+0x98,0x0D,0x00,0x20,0x0C,0x00,0x00,0x50,0x2A,0x00,0x00,0x20,0xEC,0x11,0x00,0x20,
+0xAE,0x09,0x00,0x20,0x48,0x0D,0x00,0x20,0xDD,0x01,0x00,0x20,0xDF,0x01,0x00,0x20,
+0x0A,0x03,0x00,0x20,0xFF,0x73,0x00,0x00,0xFF,0x7B,0x00,0x00,0xF6,0x03,0x00,0x20,
+0x34,0x0D,0x00,0x20,0x0F,0x49,0x10,0x4A,0x00,0x23,0x0C,0x68,0x10,0x78,0x0F,0x4D,
+0x20,0x18,0xC4,0x5C,0x58,0x19,0x01,0x33,0x04,0x70,0x08,0x2B,0xF5,0xD1,0xFC,0xF7,
+0xD7,0xFF,0x0D,0xE0,0x0A,0x4B,0x1A,0x78,0x08,0x4B,0x1A,0x70,0x08,0xE0,0x09,0x4B,
+0x9A,0x78,0x06,0x4B,0x1A,0x70,0x03,0xE0,0x06,0x4B,0xDA,0x78,0x03,0x4B,0x1A,0x70,
+0x38,0xBD,0xC0,0x46,0x34,0x0D,0x00,0x20,0x2A,0x00,0x00,0x20,0x0C,0x00,0x00,0x50,
+0xFF,0x5B,0x00,0x00,0x35,0x00,0x00,0x20,0x08,0xB5,0x03,0x1C,0x50,0x1E,0x06,0x28,
+0x35,0xD8,0xFF,0xF7,0x93,0xF8,0x04,0x0A,0x2A,0x1B,0x15,0x2A,0x2A,0x00,0x18,0x4A,
+0x01,0x23,0x13,0x70,0x17,0x4A,0x13,0x70,0x29,0xE0,0x16,0x4A,0x9B,0x01,0x59,0x18,
+0x02,0x20,0x15,0x4B,0x10,0x70,0x49,0x00,0x14,0x4A,0xC9,0x18,0x11,0x60,0x1E,0xE0,
+0xFC,0xF7,0x9E,0xFF,0x0E,0x4B,0x00,0x22,0x1A,0x70,0x18,0xE0,0x0D,0x4A,0x5B,0x01,
+0x59,0x18,0x01,0x20,0x0E,0x4B,0x10,0x70,0x5A,0x56,0x0E,0x4B,0x00,0x2A,0x00,0xDC,
+0x00,0x22,0x1A,0x80,0x09,0x4A,0x13,0x60,0x09,0xE0,0x06,0x4A,0x02,0x20,0x5B,0x01,
+0x10,0x70,0xC9,0x18,0x08,0x4A,0x49,0x00,0x89,0x18,0x04,0x4A,0x11,0x60,0x08,0xBD,
+0xE5,0x01,0x00,0x20,0xF6,0x03,0x00,0x20,0x84,0x40,0x00,0x40,0x34,0x0D,0x00,0x20,
+0x64,0x0E,0x00,0x20,0x08,0x03,0x00,0x20,0xF8,0x03,0x00,0x20,0xF0,0xB5,0x87,0x4C,
+0x23,0x23,0xE3,0x5C,0x8D,0xB0,0x00,0x2B,0x12,0xD0,0x01,0x3B,0xDB,0xB2,0x84,0x4D,
+0x84,0x49,0x00,0xE0,0x13,0x1C,0x9A,0x00,0xD2,0x18,0x52,0x00,0x8A,0x18,0x3C,0x26,
+0x90,0x5F,0x5A,0x1E,0x46,0x1E,0xB0,0x41,0xE8,0x54,0xD2,0xB2,0x00,0x2B,0xF1,0xD1,
+0xFC,0xF7,0x82,0xFF,0x00,0x28,0xFB,0xD1,0x23,0x23,0xE4,0x5C,0x07,0x94,0x00,0x2C,
+0x00,0xD1,0xA3,0xE0,0x78,0x4B,0x60,0x22,0x19,0x78,0x78,0x4B,0x09,0x01,0x1B,0x78,
+0x52,0x42,0x0A,0x43,0x76,0x4C,0x20,0x21,0x1B,0x01,0x0B,0x43,0x34,0x21,0x61,0x5C,
+0x74,0x48,0x09,0x91,0x00,0x21,0x74,0x4F,0x08,0x91,0x6E,0x49,0xD2,0xB2,0xDB,0xB2,
+0x0A,0x92,0x0B,0x93,0xC4,0x19,0x00,0x23,0x01,0x22,0x01,0x91,0x3E,0xE0,0x01,0x99,
+0x6E,0x4D,0x6F,0x4F,0xC9,0x18,0x8C,0x46,0x79,0x5D,0x6E,0x4F,0xFD,0x18,0x67,0x46,
+0xBF,0x88,0x04,0x97,0xAF,0x88,0x06,0x97,0x67,0x46,0x3F,0x8C,0xBC,0x46,0x2F,0x8B,
+0x03,0x97,0x00,0x29,0x22,0xD1,0x61,0x46,0x09,0xB2,0x6F,0x46,0x05,0x91,0x0C,0x37,
+0x00,0x21,0x79,0x5E,0x05,0x9F,0x79,0x1A,0xCF,0x17,0xC9,0x19,0x79,0x40,0x09,0x9F,
+0xB9,0x42,0x65,0xDA,0x10,0x27,0x69,0x46,0x79,0x5E,0x03,0x91,0x69,0x46,0x18,0x31,
+0x00,0x27,0xCF,0x5F,0x03,0x99,0xCF,0x1B,0xF9,0x17,0x7F,0x18,0x4F,0x40,0x09,0x99,
+0xB9,0x42,0x55,0xDD,0x2C,0x27,0xED,0x5F,0x00,0x2D,0x57,0xDD,0x07,0x9E,0x55,0x1C,
+0x02,0x33,0x01,0x30,0x0C,0x34,0x96,0x42,0x45,0xDD,0x2A,0x1C,0x01,0x9D,0x9E,0x00,
+0xF6,0x18,0xAE,0x19,0x3C,0x27,0xF5,0x5F,0x00,0x2D,0xB8,0xDC,0x4D,0x4E,0xF5,0x18,
+0x2C,0x27,0xEE,0x5F,0x00,0x2E,0xE9,0xDD,0x06,0x78,0x00,0x2E,0xE6,0xD0,0x05,0x21,
+0x69,0x56,0x2E,0x8B,0x8C,0x46,0x08,0x99,0xAD,0x88,0xC9,0x00,0x37,0xB2,0x03,0x91,
+0x04,0x95,0x61,0x46,0x0F,0x25,0x0D,0x40,0x3F,0x11,0x0F,0x21,0x8F,0x43,0x03,0x99,
+0x2F,0x43,0x8C,0x46,0x3E,0x49,0x08,0x9D,0x8C,0x44,0x0B,0x99,0x01,0x35,0x11,0x43,
+0x05,0x95,0x65,0x46,0x29,0x70,0x6F,0x70,0x6D,0x46,0x10,0x27,0x7F,0x5D,0x00,0x21,
+0x65,0x46,0xEE,0x70,0xAF,0x70,0x29,0x71,0x69,0x71,0xA9,0x71,0xE9,0x71,0x14,0x26,
+0x6D,0x46,0x75,0x5D,0x07,0x9E,0x08,0x95,0x01,0x70,0x55,0x1C,0x02,0x33,0x01,0x30,
+0x0C,0x34,0x96,0x42,0xB9,0xDC,0x08,0x9F,0x00,0x2F,0x42,0xD1,0x0D,0xB0,0xF0,0xBD,
+0x2D,0x4F,0xD7,0x19,0x01,0x3F,0x3F,0x78,0x00,0x2F,0xA3,0xD0,0x69,0x46,0x10,0x27,
+0x7D,0x5E,0x08,0x99,0x2D,0x12,0x03,0x95,0xC9,0x00,0x05,0x9D,0x02,0x91,0x03,0x99,
+0x2F,0x11,0x0F,0x25,0x0D,0x40,0x40,0x36,0x03,0x95,0x36,0x78,0x0F,0x25,0xAF,0x43,
+0x05,0x97,0x06,0x96,0x02,0x9F,0x1E,0x4E,0x05,0x99,0xF5,0x19,0x0A,0x9F,0x03,0x9E,
+0x17,0x43,0x0E,0x43,0x2F,0x70,0x6E,0x70,0x10,0x27,0x6E,0x46,0xBE,0x5D,0x69,0x46,
+0xAE,0x70,0x18,0x26,0x71,0x5C,0x67,0x46,0xEF,0x70,0x29,0x71,0x26,0x78,0x6E,0x71,
+0x66,0x68,0xFF,0x2E,0x00,0xDD,0xFF,0x26,0xAE,0x71,0xA6,0x68,0xFF,0x2E,0x00,0xDD,
+0xFF,0x26,0x08,0x9F,0xEE,0x71,0x01,0x37,0xFF,0xB2,0x01,0x25,0x08,0x97,0x05,0x70,
+0x6C,0xE7,0x0E,0x4B,0x1F,0x60,0xFC,0xF7,0x39,0xFE,0xB7,0xE7,0xAE,0x09,0x00,0x20,
+0xEC,0x01,0x00,0x20,0x9C,0x0D,0x00,0x20,0xF5,0x00,0x00,0x20,0xF4,0x00,0x00,0x20,
+0x48,0x0D,0x00,0x20,0xF4,0x16,0x00,0x20,0x38,0xFC,0xFF,0xFF,0x04,0x05,0x00,0x00,
+0xEC,0x11,0x00,0x20,0x20,0x01,0x00,0x20,0x64,0x01,0x00,0x20,0x98,0x0D,0x00,0x20,
+0x10,0xB5,0x04,0x1C,0xFC,0xF7,0x70,0xFE,0x00,0x28,0xFB,0xD1,0x0A,0x4B,0x01,0x2C,
+0x02,0xD0,0x02,0x2C,0x05,0xD1,0x02,0xE0,0x0F,0x22,0x1A,0x70,0x01,0xE0,0x0E,0x22,
+0x1A,0x70,0x00,0x22,0xDA,0x70,0x9A,0x70,0x5A,0x70,0x04,0x4B,0x01,0x22,0x1A,0x60,
+0xFC,0xF7,0x04,0xFE,0x10,0xBD,0xC0,0x46,0xEC,0x11,0x00,0x20,0x98,0x0D,0x00,0x20,
+0xF0,0xB5,0x8B,0xB0,0x14,0x28,0x00,0xD9,0xC2,0xE3,0xFE,0xF7,0x09,0xFF,0x15,0x00,
+0xC1,0x03,0x45,0x00,0xC1,0x03,0x7B,0x00,0xC1,0x03,0x86,0x00,0xAA,0x00,0xC1,0x03,
+0x1D,0x01,0xC1,0x03,0xC1,0x03,0x6A,0x01,0xC1,0x03,0x76,0x01,0x73,0x03,0xDF,0x02,
+0xC1,0x03,0xC1,0x03,0xAB,0x03,0xBC,0x03,0xCA,0x4B,0xCB,0x4C,0x1B,0x78,0x00,0x2B,
+0x27,0xD1,0x01,0x23,0xF2,0x20,0x23,0x72,0xE0,0x70,0xFE,0xF7,0xD9,0xFD,0xC7,0x4B,
+0x20,0x70,0x1B,0x78,0xAA,0x2B,0x00,0xD0,0x9A,0xE3,0xC5,0x4A,0xC5,0x4B,0x11,0x78,
+0xC5,0x4A,0x1B,0x78,0x12,0x78,0xC9,0x18,0x91,0x42,0x00,0xD0,0x90,0xE3,0xC3,0x4A,
+0xE0,0x78,0x40,0x32,0x12,0x78,0x59,0xB2,0x41,0x18,0x89,0x18,0xFF,0x29,0x03,0xDD,
+0xD2,0x43,0xD2,0xB2,0xE2,0x70,0x83,0xE3,0xE2,0x78,0xD3,0x18,0xDB,0xB2,0xE3,0x70,
+0x7E,0xE3,0xE3,0x78,0xA3,0x70,0x7B,0xE3,0xE0,0x23,0xB9,0x49,0xDB,0x01,0x00,0x22,
+0x01,0xCB,0x12,0x18,0x8B,0x42,0xFB,0xD1,0x19,0x68,0x00,0x23,0x8A,0x42,0x03,0xD0,
+0xB4,0x4B,0xFF,0x22,0x9A,0x70,0x01,0x23,0xF0,0x22,0xB3,0x48,0xD2,0x01,0x00,0x21,
+0x10,0xCA,0x09,0x19,0x82,0x42,0xFB,0xD1,0x12,0x68,0x91,0x42,0x03,0xD0,0xAD,0x4B,
+0xFF,0x22,0xDA,0x70,0x01,0xE0,0x00,0x2B,0x00,0xD0,0xFE,0xE7,0xAB,0x4A,0xA0,0x21,
+0x13,0x70,0xAB,0x4A,0xC9,0x00,0x53,0x54,0xAA,0x49,0xA1,0x20,0x53,0x54,0xAA,0x49,
+0xC0,0x00,0x53,0x54,0x0A,0x21,0x12,0x18,0x01,0x39,0xC9,0xB2,0x53,0x54,0x00,0x29,
+0xFA,0xD1,0x45,0xE3,0xA5,0x49,0x00,0x23,0x0A,0x68,0x9A,0x42,0x02,0xDD,0x4B,0x68,
+0xD3,0x18,0xDB,0x0F,0xA2,0x4A,0x13,0x70,0x3A,0xE3,0xA2,0x4B,0x9C,0x49,0x9B,0x69,
+0x9C,0x4A,0x00,0x2B,0x0D,0xD1,0x8B,0x5C,0x19,0x20,0x01,0x2B,0x11,0xD0,0x9E,0x4B,
+0x1B,0x78,0x01,0x2B,0x02,0xD1,0x9D,0x4B,0x98,0x7E,0x0A,0xE0,0x9C,0x4B,0x98,0x7E,
+0x07,0xE0,0x8A,0x5C,0x08,0x20,0x01,0x2A,0x03,0xD1,0x19,0x20,0x03,0x2B,0x00,0xD0,
+0x08,0x20,0x98,0x4B,0x80,0x01,0x19,0x68,0xFE,0xF7,0xBA,0xFE,0x87,0x4B,0x98,0x76,
+0x16,0xE3,0x90,0x4B,0x00,0x22,0x1A,0x60,0x8F,0x4A,0x11,0x78,0x92,0x4A,0x00,0x29,
+0x03,0xD0,0x02,0x21,0x11,0x70,0x08,0x27,0x08,0xE0,0x01,0x21,0x11,0x70,0x87,0x4A,
+0x06,0x27,0x08,0x21,0x52,0x5E,0x22,0x2A,0x00,0xDC,0x03,0x27,0x5D,0x69,0x1C,0x69,
+0x1B,0x68,0x00,0x26,0x05,0x95,0x04,0x94,0x03,0x93,0x02,0x96,0x1A,0x25,0x47,0xE0,
+0x00,0x20,0x0E,0x23,0xAE,0x1C,0x01,0x3B,0xDB,0xB2,0x5A,0x1C,0x92,0x01,0x83,0x49,
+0x92,0x19,0x52,0x00,0x52,0x5A,0x0C,0x1C,0x12,0xB2,0x80,0x18,0x00,0x2B,0xF2,0xD1,
+0x1C,0x21,0xFE,0xF7,0x85,0xFE,0xFA,0x0F,0x06,0x90,0x0E,0x23,0x07,0x92,0x01,0x3B,
+0xDB,0xB2,0x58,0x1C,0x82,0x01,0x92,0x19,0x00,0x90,0x52,0x00,0xA2,0x5A,0x90,0xB2,
+0x11,0xB2,0x02,0x9A,0x8A,0x42,0x03,0xDA,0xC1,0xB2,0x02,0x91,0x05,0x95,0x04,0x93,
+0x06,0x9A,0x80,0x1A,0x80,0xB2,0x01,0x90,0x68,0x46,0x04,0x22,0x82,0x5E,0x00,0x98,
+0x81,0x01,0x89,0x19,0x49,0x00,0x00,0x2A,0x0D,0xDD,0x00,0x91,0x68,0x46,0x61,0x5A,
+0x81,0x88,0x00,0x98,0x21,0x52,0x07,0x98,0xD1,0x17,0xBA,0x42,0x41,0x41,0x03,0x9A,
+0x52,0x18,0x03,0x92,0x02,0xE0,0x00,0x20,0x62,0x5A,0x60,0x52,0x00,0x2B,0xCE,0xD1,
+0x01,0x3D,0xED,0xB2,0xFF,0x2D,0xB3,0xD1,0x5A,0x4B,0x04,0x9C,0x05,0x9D,0x03,0x9E,
+0x1C,0x61,0x5D,0x61,0x1E,0x60,0xA3,0xE2,0x5D,0x4B,0x5E,0x48,0x00,0x24,0x1C,0x60,
+0x82,0x68,0xC3,0x68,0x9A,0x42,0x00,0xDA,0x9A,0xE2,0x0C,0x25,0xD6,0x0F,0x95,0x42,
+0x66,0x41,0x92,0x19,0xDE,0x17,0x41,0x68,0xF6,0x1A,0x00,0x68,0xF6,0x0F,0x9B,0x1B,
+0x18,0x27,0xC6,0x0F,0x87,0x42,0x66,0x41,0x80,0x19,0xCE,0x17,0x76,0x1A,0xF6,0x0F,
+0x89,0x1B,0x41,0x1A,0xC8,0x0F,0x8D,0x42,0x44,0x41,0xE4,0xB2,0x00,0x2C,0x08,0xD1,
+0xD3,0x1A,0xD9,0x0F,0x0B,0x22,0x9A,0x42,0x4C,0x41,0xE4,0xB2,0x00,0x2C,0x00,0xD1,
+0x76,0xE2,0x49,0x4B,0x1A,0x78,0x0E,0x23,0x00,0x2A,0x13,0xD1,0x70,0xE2,0x5F,0x1C,
+0x1A,0x22,0xBF,0x01,0x01,0x3A,0xD2,0xB2,0x91,0x1C,0x79,0x18,0x0D,0x5D,0x00,0x2D,
+0x02,0xD0,0x01,0x25,0x0D,0x55,0x02,0xE0,0x49,0x00,0x0E,0x5A,0x0D,0x52,0x00,0x2A,
+0xF0,0xD1,0x01,0xE0,0x3D,0x4C,0x39,0x48,0x01,0x3B,0xDB,0xB2,0xFF,0x2B,0xE6,0xD1,
+0x56,0xE2,0x3B,0x4B,0x34,0x33,0x1A,0x78,0x00,0x2A,0x00,0xD0,0x50,0xE2,0x01,0x22,
+0x1A,0x70,0x02,0x20,0xFF,0xF7,0x64,0xFE,0x4A,0xE2,0x2A,0x4B,0x27,0x4A,0x99,0x69,
+0x01,0x29,0x79,0xD0,0x28,0x48,0x04,0x78,0xFF,0x20,0x01,0x2C,0x00,0xD0,0x10,0x20,
+0x14,0x89,0x25,0x1C,0x0B,0x3D,0xAD,0xB2,0x09,0x2D,0x00,0xD9,0x88,0xE0,0x0C,0x27,
+0xD2,0x5F,0x05,0x2A,0x00,0xDD,0x83,0xE0,0x2A,0x4A,0x24,0xB2,0x40,0x32,0x12,0x78,
+0xA2,0x42,0x00,0xDB,0x7C,0xE0,0x28,0x4A,0x12,0x68,0x82,0x42,0x78,0xDA,0x00,0x29,
+0x03,0xD1,0x18,0x4B,0x03,0x22,0x9A,0x61,0x74,0xE0,0x03,0x29,0x72,0xD1,0x11,0x4A,
+0x0F,0x4B,0x99,0x5C,0xA0,0x22,0xD2,0x00,0x01,0x29,0x3F,0xD1,0x99,0x5C,0x01,0x31,
+0x99,0x54,0x3E,0xE0,0xE5,0x01,0x00,0x20,0xAA,0x0A,0x00,0x20,0x28,0x7C,0x00,0x00,
+0x29,0x7C,0x00,0x00,0x2A,0x7C,0x00,0x00,0x2B,0x7C,0x00,0x00,0x48,0x0D,0x00,0x20,
+0xF8,0x73,0x00,0x00,0x2D,0x00,0x00,0x20,0xF8,0x7B,0x00,0x00,0x54,0x00,0x00,0x20,
+0xEC,0x11,0x00,0x20,0x0C,0x05,0x00,0x00,0x04,0x05,0x00,0x00,0x70,0x01,0x00,0x20,
+0x3D,0x11,0x00,0x20,0xF8,0x08,0x00,0x20,0xDD,0x01,0x00,0x20,0x9A,0x74,0x00,0x00,
+0x4A,0x74,0x00,0x00,0x78,0x09,0x00,0x20,0x40,0x00,0x00,0x20,0x00,0x40,0x00,0x40,
+0x38,0x0D,0x00,0x20,0xE4,0x10,0x00,0x20,0xF5,0x00,0x00,0x20,0x00,0x20,0x00,0x40,
+0xAE,0x09,0x00,0x20,0x9C,0x0D,0x00,0x20,0x4C,0x11,0x00,0x20,0x99,0x5C,0x02,0x31,
+0x99,0x54,0x9A,0x5C,0x01,0x2A,0x25,0xD9,0xB5,0x4A,0x01,0x21,0x91,0x61,0xA0,0x22,
+0x00,0x21,0xD2,0x00,0x99,0x54,0x1D,0xE0,0x10,0x89,0xB2,0x49,0x04,0x1C,0x0A,0x3C,
+0xA4,0xB2,0x0A,0x2C,0x0B,0xD8,0x0C,0x24,0x12,0x5F,0x05,0x2A,0x07,0xDC,0x0A,0x1C,
+0x40,0x32,0x12,0x78,0x00,0xB2,0x82,0x42,0x01,0xDA,0x00,0x22,0xDA,0x60,0xDA,0x68,
+0x59,0x2A,0x05,0xDC,0x09,0x68,0x00,0x29,0x04,0xD1,0x01,0x32,0xDA,0x60,0x01,0xE0,
+0x00,0x22,0x9A,0x61,0xA4,0x4B,0x1A,0x78,0xA1,0x4B,0x00,0x2A,0x08,0xD1,0x99,0x69,
+0x01,0x29,0x05,0xD1,0xA1,0x49,0x08,0x25,0x49,0x5F,0x21,0x29,0x00,0xDD,0x9A,0x61,
+0x99,0x69,0x9F,0x4B,0x01,0x29,0x06,0xD1,0x3C,0x22,0xDA,0x85,0x0F,0x22,0xDA,0x84,
+0x0A,0x22,0x1A,0x85,0x0A,0xE0,0x2D,0x20,0xD8,0x85,0x28,0x21,0x00,0x2A,0x02,0xD0,
+0xD8,0x84,0x19,0x85,0x02,0xE0,0x23,0x22,0xD9,0x84,0x1A,0x85,0x92,0x4B,0x19,0x78,
+0x00,0x29,0x68,0xD1,0x8F,0x4B,0x1B,0x68,0x00,0x2B,0x64,0xDD,0x90,0x4A,0x8C,0x4B,
+0x12,0x7F,0x18,0x7D,0x52,0xB2,0x02,0x92,0x1A,0x69,0x02,0x38,0x02,0x3A,0x02,0x24,
+0xC0,0xB2,0xD2,0xB2,0x64,0x42,0x0F,0x1C,0x0B,0x1C,0x04,0x90,0x21,0xE0,0x1E,0x1C,
+0x19,0x22,0x82,0x42,0x5E,0x41,0xF6,0xB2,0x00,0x2E,0x0F,0xD0,0x66,0x46,0x00,0x2E,
+0x0C,0xD0,0x03,0x9A,0x86,0x1C,0x96,0x19,0x82,0x4A,0x76,0x00,0xB6,0x5A,0x02,0x9A,
+0x96,0x42,0x03,0xDB,0xF7,0x19,0x01,0x31,0xBF,0xB2,0xC9,0xB2,0x01,0x30,0x01,0x35,
+0xC0,0xB2,0x03,0x2D,0xE3,0xD1,0x05,0x9A,0x01,0x34,0x01,0x32,0xD2,0xB2,0x03,0x2C,
+0x0D,0xD0,0x0D,0x25,0x18,0x1C,0x95,0x42,0x58,0x41,0x56,0x1C,0xC0,0xB2,0x02,0x25,
+0xB6,0x01,0x84,0x46,0x6D,0x42,0x04,0x98,0x03,0x96,0x05,0x92,0xCF,0xE7,0x6F,0x4B,
+0x1E,0x89,0x6B,0x4B,0x9C,0x69,0x00,0x2C,0x1D,0xD1,0xF5,0x01,0x7D,0x19,0x2D,0xB2,
+0x01,0x31,0x28,0x1C,0xFE,0xF7,0xD4,0xFC,0x6B,0x4B,0x80,0xB2,0x27,0x1C,0x83,0x42,
+0x67,0x41,0xFB,0xB2,0x00,0x2B,0x0E,0xD0,0x68,0x4B,0xEA,0x0F,0xAB,0x42,0x54,0x41,
+0xE4,0xB2,0x00,0x2C,0x07,0xD0,0x5F,0x4B,0x36,0xB2,0x40,0x33,0x1B,0x78,0xB3,0x42,
+0x01,0xDD,0xFB,0xF7,0x01,0xFB,0x62,0x4B,0x0A,0x24,0x1A,0x78,0x59,0x4D,0x53,0x42,
+0x5A,0x41,0x5B,0x4B,0x52,0x00,0x32,0x33,0x1A,0x70,0x27,0x1C,0x01,0x3C,0xE4,0xB2,
+0x39,0x1C,0x61,0x43,0x6B,0x18,0x3C,0x20,0x1B,0x5E,0x00,0x2B,0x15,0xD0,0x63,0x00,
+0xEB,0x18,0x04,0x22,0x9B,0x5E,0x0C,0x20,0x08,0x93,0x23,0x1C,0x10,0x33,0x60,0x43,
+0x5B,0x00,0x5B,0x5F,0x41,0x30,0x09,0x93,0x52,0x4B,0xFF,0x30,0x69,0x18,0xC0,0x18,
+0x41,0x31,0x08,0xAA,0x23,0x1C,0xFE,0xF7,0x69,0xFF,0x3B,0x1C,0x63,0x43,0x45,0x4E,
+0x43,0x4A,0xF6,0x18,0x38,0x36,0x33,0x7A,0x10,0x68,0x58,0x43,0x4A,0x4B,0x19,0x68,
+0xFE,0xF7,0x86,0xFC,0x30,0x72,0x00,0x2C,0xD0,0xD1,0xE1,0xE0,0x3E,0x4B,0x1B,0x78,
+0x00,0x2B,0x00,0xD0,0xDC,0xE0,0x3E,0x4B,0x42,0x49,0x32,0x33,0x18,0x78,0x38,0x4B,
+0x42,0x4C,0x9B,0x69,0x47,0x1E,0x02,0x93,0x0B,0x5D,0xBC,0x46,0x0A,0x22,0x01,0x3A,
+0xD2,0xB2,0x0C,0x21,0x51,0x43,0x3B,0x4C,0x32,0x4D,0x61,0x18,0x0C,0x1C,0x05,0x31,
+0xFF,0x31,0x4E,0x6C,0x0A,0x21,0x51,0x43,0xFC,0x34,0x69,0x18,0xA7,0x6C,0x3C,0x25,
+0x4C,0x5F,0x38,0x31,0x00,0x2C,0x22,0xD0,0xBC,0x1B,0xE5,0x17,0x64,0x19,0x6C,0x40,
+0x33,0x4D,0xE4,0xB2,0xAD,0x56,0x65,0x45,0x0F,0xD1,0x11,0x2C,0x16,0xD8,0x02,0x9C,
+0x00,0x2C,0x14,0xD0,0x28,0x2F,0x11,0xDC,0x28,0x2E,0x0F,0xDC,0x06,0x25,0x4C,0x5F,
+0x09,0x7A,0x02,0x34,0x8C,0x42,0x0A,0xDA,0x08,0xE0,0x85,0x42,0x07,0xDB,0x00,0x2B,
+0x05,0xD1,0x14,0x23,0xA3,0x42,0x9B,0x41,0x5B,0x42,0x00,0xE0,0x01,0x23,0x00,0x2A,
+0xC5,0xD1,0x18,0x4C,0x0A,0x21,0x01,0x39,0xC9,0xB2,0x00,0x2B,0x0D,0xD0,0x0A,0x25,
+0x4D,0x43,0x65,0x19,0x3E,0x27,0xEE,0x5F,0x00,0x20,0x02,0x96,0x02,0x9F,0x14,0x25,
+0xF6,0x0F,0xBD,0x42,0x46,0x41,0x75,0x42,0x2B,0x40,0x0A,0x25,0x4D,0x43,0x65,0x19,
+0x3C,0x20,0x2D,0x5E,0x00,0x2D,0x01,0xD0,0x01,0x32,0xD2,0xB2,0x00,0x29,0xE2,0xD1,
+0x10,0x49,0x12,0x4C,0x0B,0x55,0x00,0x2A,0x72,0xD1,0x11,0x48,0x0A,0x23,0x01,0x3B,
+0xDB,0xB2,0xC2,0x54,0x00,0x2B,0xFA,0xD1,0x0C,0x4D,0x4B,0x55,0x68,0xE0,0xC0,0x46,
+0xF8,0x08,0x00,0x20,0x9C,0x0D,0x00,0x20,0xDD,0x01,0x00,0x20,0x70,0x01,0x00,0x20,
+0x48,0x0D,0x00,0x20,0x00,0x40,0x00,0x40,0x8F,0x01,0x00,0x00,0x5F,0x09,0x00,0x00,
+0xF5,0x00,0x00,0x20,0xEC,0x11,0x00,0x20,0x4C,0x11,0x00,0x20,0x04,0x05,0x00,0x00,
+0x3E,0x11,0x00,0x20,0x27,0x4B,0x9A,0x69,0x00,0x2A,0x10,0xD0,0x26,0x4A,0x12,0x68,
+0x00,0x2A,0x0C,0xDD,0x25,0x4A,0x12,0x68,0x01,0x2A,0x08,0xD1,0x24,0x4A,0x12,0x78,
+0x00,0x2A,0x04,0xD0,0x23,0x4A,0x12,0x68,0x00,0x2A,0x00,0xD1,0x9A,0x61,0x9A,0x69,
+0x00,0x2A,0x04,0xD1,0xA0,0x21,0x20,0x48,0xC9,0x00,0x42,0x54,0xDA,0x60,0x9A,0x68,
+0x01,0x2A,0x2D,0xD1,0x00,0x22,0x9A,0x60,0x5B,0x68,0x01,0x2B,0x07,0xD1,0x1B,0x4A,
+0x13,0x70,0x1B,0x4A,0x34,0x32,0x13,0x70,0x1A,0x4A,0x13,0x70,0x20,0xE0,0x00,0x2B,
+0x1E,0xD1,0x16,0x4A,0x13,0x70,0x16,0x4A,0x34,0x32,0x13,0x70,0x15,0x4B,0x02,0x22,
+0x1A,0x70,0x15,0xE0,0x14,0x4B,0x04,0x22,0x9A,0x70,0xDC,0x22,0x52,0x00,0x9A,0x80,
+0x40,0x22,0x9A,0x71,0x06,0x22,0xDA,0x71,0x01,0x22,0x1A,0x72,0x03,0x22,0x5A,0x72,
+0x00,0x22,0x1A,0x70,0x04,0xE0,0x0C,0x48,0x0C,0x49,0x50,0x22,0xFE,0xF7,0x02,0xFC,
+0x0B,0xB0,0xF0,0xBD,0xF8,0x08,0x00,0x20,0x20,0x01,0x00,0x20,0x9C,0x0D,0x00,0x20,
+0x48,0x11,0x00,0x20,0xBC,0x11,0x00,0x20,0xEC,0x11,0x00,0x20,0xDD,0x01,0x00,0x20,
+0xAE,0x09,0x00,0x20,0xB3,0x01,0x00,0x20,0x48,0x0D,0x00,0x20,0x4A,0x74,0x00,0x00,
+0x38,0xB5,0x50,0x28,0x05,0xD1,0x3B,0x4B,0x01,0x20,0x18,0x60,0xFE,0xF7,0xBC,0xFD,
+0x6F,0xE0,0x39,0x4B,0x40,0x28,0x01,0xD1,0x01,0x24,0x1C,0x70,0x1B,0x78,0x00,0x2B,
+0x67,0xD0,0x41,0x38,0x0E,0x28,0x64,0xD8,0xFE,0xF7,0x10,0xFB,0x08,0x12,0x08,0x2D,
+0x08,0x47,0x63,0x63,0x63,0x63,0x63,0x63,0x63,0x63,0x5E,0x00,0x2F,0x4B,0x01,0x22,
+0x1A,0x70,0x2F,0x4B,0x1A,0x80,0x2F,0x4A,0x13,0x60,0xFC,0xF7,0xF7,0xF9,0x50,0xE0,
+0x2A,0x48,0x2C,0x4B,0xFF,0x2A,0x0B,0xD1,0x2B,0x4A,0xC9,0x01,0x12,0x78,0x52,0x00,
+0xD2,0xB2,0x02,0x70,0x29,0x4A,0x89,0x18,0x19,0x60,0xFC,0xF7,0xE7,0xF9,0x40,0xE0,
+0x89,0x01,0x8A,0x18,0x25,0x49,0x52,0x00,0x02,0x24,0x52,0x18,0x04,0x70,0x1A,0x60,
+0xFC,0xF7,0xDC,0xF9,0x35,0xE0,0x1D,0x4C,0x1E,0x4B,0x21,0x48,0xFF,0x2A,0x0A,0xD1,
+0x1D,0x4A,0x89,0x01,0x12,0x78,0x40,0x18,0x52,0x00,0xD2,0xB2,0x22,0x70,0x18,0x60,
+0xFC,0xF7,0xCC,0xF9,0x25,0xE0,0x49,0x01,0x52,0x18,0x52,0x00,0x02,0x25,0x80,0x18,
+0x25,0x70,0x18,0x60,0xFC,0xF7,0xC2,0xF9,0x1B,0xE0,0x10,0x4C,0x11,0x4B,0x15,0x48,
+0xFF,0x2A,0x08,0xD1,0x10,0x4A,0x49,0x01,0x92,0x78,0x40,0x18,0x22,0x70,0x18,0x60,
+0xFC,0xF7,0xB4,0xF9,0x0D,0xE0,0x49,0x01,0x52,0x18,0x01,0x25,0x80,0x18,0x25,0x70,
+0x18,0x60,0xFC,0xF7,0xAB,0xF9,0x04,0xE0,0x0B,0x4A,0x00,0x23,0x13,0x70,0x02,0x4A,
+0x13,0x70,0x38,0xBD,0x50,0x11,0x00,0x20,0xE5,0x01,0x00,0x20,0xF6,0x03,0x00,0x20,
+0x08,0x03,0x00,0x20,0x34,0x0D,0x00,0x20,0x0A,0x03,0x00,0x20,0x84,0x40,0x00,0x40,
+0xF8,0x03,0x00,0x20,0xB3,0x0A,0x00,0x20,0x1D,0x03,0x00,0x20,0x08,0xB5,0x35,0x4B,
+0x1B,0x88,0x33,0x2B,0x29,0xD0,0x06,0xD8,0x0A,0x2B,0x2F,0xD0,0x30,0x2B,0x11,0xD0,
+0x01,0x2B,0x5D,0xD1,0x06,0xE0,0xA0,0x2B,0x32,0xD0,0xB0,0x2B,0x4C,0xD0,0x5F,0x2B,
+0x56,0xD1,0x3F,0xE0,0x2C,0x4A,0x11,0x78,0x0E,0x22,0x11,0x42,0x50,0xD1,0x2B,0x4A,
+0x13,0x70,0x4D,0xE0,0x28,0x4B,0x2A,0x4A,0x1B,0x78,0x12,0x78,0x01,0x2B,0x05,0xD1,
+0x00,0x2A,0x45,0xD1,0x27,0x4A,0x53,0x60,0x93,0x60,0x41,0xE0,0x01,0x2A,0x3F,0xD1,
+0x24,0x4B,0x00,0x21,0x59,0x60,0x9A,0x60,0x3A,0xE0,0x1F,0x4B,0x22,0x4A,0x19,0x78,
+0x22,0x4B,0x01,0x29,0x00,0xD0,0x00,0x21,0xD1,0x54,0x31,0xE0,0x20,0x4B,0x1A,0x78,
+0x00,0x2A,0x02,0xD1,0x01,0x22,0x1A,0x70,0x2A,0xE0,0x00,0x22,0x1A,0x70,0x27,0xE0,
+0x15,0x4B,0x1C,0x4A,0x18,0x78,0x1C,0x4B,0x1A,0x28,0x06,0xD1,0x19,0x78,0x1B,0x4B,
+0x10,0x78,0x1A,0x78,0xFF,0xF7,0xB0,0xF9,0x1A,0xE0,0x11,0x78,0x1A,0x78,0xFF,0xF7,
+0x1F,0xFF,0x15,0xE0,0x0C,0x4B,0x1B,0x78,0x00,0x2B,0x11,0xD0,0x14,0x4B,0x08,0x22,
+0x1A,0x60,0xFA,0xF7,0xAD,0xFB,0x0B,0xE0,0x07,0x4B,0x1B,0x78,0x1A,0x2B,0x07,0xD1,
+0x0C,0x4B,0x18,0x78,0x0C,0x4B,0x19,0x78,0x0C,0x4B,0x1A,0x78,0xFF,0xF7,0x94,0xF9,
+0x08,0xBD,0xC0,0x46,0x28,0x00,0x00,0x20,0x0C,0x00,0x00,0x50,0xE8,0x01,0x00,0x20,
+0xDD,0x01,0x00,0x20,0xF8,0x08,0x00,0x20,0xEC,0x11,0x00,0x20,0x0C,0x05,0x00,0x00,
+0xDF,0x01,0x00,0x20,0x0E,0x00,0x00,0x50,0x0D,0x00,0x00,0x50,0x10,0x00,0x00,0x50,
+0x50,0x11,0x00,0x20,0x00,0x01,0x02,0x03,0x04,0x04,0x05,0x06,0x07,0x08,0x09,0x0A,
+0x0B,0x0B,0x0C,0x0D,0x0E,0x0F,0x10,0x11,0x11,0x12,0x13,0x14,0x15,0x15,0x16,0x17,
+0x18,0x18,0x19,0x1A,0x1B,0x1B,0x1C,0x1D,0x1D,0x1E,0x1F,0x1F,0x20,0x21,0x21,0x22,
+0x23,0x23,0x24,0x24,0x25,0x25,0x26,0x27,0x27,0x28,0x28,0x29,0x29,0x2A,0x2A,0x2B,
+0x2B,0x2C,0x2C,0x2D,0x00,0x00,0x78,0x04,0xEF,0x08,0x66,0x0D,0xDB,0x11,0x50,0x16,
+0xC2,0x1A,0x33,0x1F,0xA1,0x23,0x0C,0x28,0x74,0x2C,0xD9,0x30,0x39,0x35,0x96,0x39,
+0xEE,0x3D,0x42,0x42,0x90,0x46,0xD9,0x4A,0x1B,0x4F,0x58,0x53,0x8E,0x57,0xBE,0x5B,
+0xE6,0x5F,0x07,0x64,0x1F,0x68,0x30,0x6C,0x39,0x70,0x38,0x74,0x2F,0x78,0x1C,0x7C,
+0xFF,0x7F,0xD9,0x83,0xA8,0x87,0x6D,0x8B,0x27,0x8F,0xD5,0x92,0x79,0x96,0x10,0x9A,
+0x9B,0x9D,0x1B,0xA1,0x8D,0xA4,0xF3,0xA7,0x4B,0xAB,0x97,0xAE,0xD4,0xB1,0x04,0xB5,
+0x26,0xB8,0x39,0xBB,0x3E,0xBE,0x34,0xC1,0x1B,0xC4,0xF2,0xC6,0xBA,0xC9,0x73,0xCC,
+0x1B,0xCF,0xB3,0xD1,0x3B,0xD4,0xB2,0xD6,0x19,0xD9,0x6E,0xDB,0xB3,0xDD,0xE6,0xDF,
+0x08,0xE2,0x18,0xE4,0x16,0xE6,0x03,0xE8,0xDD,0xE9,0xA5,0xEB,0x5B,0xED,0xFE,0xEE,
+0x8F,0xF0,0x0D,0xF2,0x77,0xF3,0xCF,0xF4,0x14,0xF6,0x46,0xF7,0x64,0xF8,0x6F,0xF9,
+0x67,0xFA,0x4B,0xFB,0x1B,0xFC,0xD8,0xFC,0x81,0xFD,0x17,0xFE,0x98,0xFE,0x06,0xFF,
+0x5F,0xFF,0xA5,0xFF,0xD7,0xFF,0xF5,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
+0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
+0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
+0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
+0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
+0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
+0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x87,0xD2,0x63,0x68,0x00,0x00,0x45,0x22,
+0x4D,0x31,0x48,0x30,0x50,0x42,0x34,0x35,0x25,0x44,0x01,0x34,0x38,0x30,0x47,0x59,
+0x30,0x31,0x00,0x00,0x00,0x48,0x10,0x5A,0x28,0x1E,0x01,0x01,0x00,0x00,0x00,0x1A,
+0x0E,0x00,0x00,0x1A,0x0E,0x00,0x00,0x00,0x01,0x01,0x00,0x0A,0x00,0x00,0x00,0x05,
+0xD0,0x02,0x00,0x00,0x00,0x01,0x01,0x50,0x50,0x50,0x01,0x01,0x00,0x00,0x62,0x00,
+0x4B,0x00,0x23,0x00,0x04,0x03,0x32,0x32,0x10,0x00,0x01,0x01,0x04,0x00,0x08,0x02,
+0x18,0x03,0x03,0x03,0x00,0x00,0x00,0x04,0x05,0x0F,0x00,0x07,0x05,0x00,0xC0,0xF9,
+0x14,0x1E,0x0A,0xF6,0x0F,0x00,0x05,0x14,0x1E,0x00,0xA2,0x29,0xDE,0x01,0x00,0x00,
+0x28,0x00,0x23,0x00,0x0F,0x0A,0x3C,0x01,0x2D,0x00,0x00,0x00,0x02,0x01,0x01,0x14,
+0x32,0x00,0x32,0x00,0xFF,0x7F,0x00,0x01,0x01,0x07,0x0B,0x00,0x32,0x00,0x0A,0x05,
+0xD0,0x03,0xB3,0x00,0xFF,0x7F,0x00,0x80,0x01,0x00,0x01,0x01,0x04,0x00,0x08,0x02,
+0x30,0x04,0x03,0x03,0x00,0x00,0x00,0x04,0x05,0x0F,0x00,0x08,0x06,0x00,0xC0,0xF9,
+0x14,0x1E,0x0A,0xF6,0x19,0x00,0x08,0x23,0x1E,0x00,0xA2,0x29,0xDE,0x01,0x00,0x00,
+0x2D,0x00,0x28,0x00,0x0F,0x0A,0x3C,0x01,0x2D,0x00,0x1E,0x00,0x02,0x01,0x01,0x14,
+0x96,0x00,0x32,0x00,0xFF,0x7F,0x01,0x01,0x01,0x07,0x0A,0x00,0x32,0x00,0x0A,0x05,
+0xD0,0x03,0xB3,0x00,0xFF,0x7F,0x00,0x80,0x19,0x00,0x1F,0x1E,0x1D,0x1C,0x1B,0x1A,
+0x19,0x15,0x14,0x13,0x12,0x11,0x10,0x0F,0x0E,0x0D,0x0C,0x0B,0x0A,0x06,0x05,0x04,
+0x03,0x02,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x11,0x10,0x0F,0x0E,0x0D,0x0C,0x0B,0x08,0x07,0x06,0x05,0x04,0x03,0x02,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x01,0x01,0x01,0x01,0x02,0x02,0x02,0x02,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x01,0x01,0x01,
+0x01,0x02,0x02,0x02,0x02,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x01,0x01,0x01,0x01,0x02,0x02,0x02,0x02,0x03,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x01,0x01,0x01,0x01,0x02,0x02,0x02,
+0x03,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x01,
+0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x01,0x01,0x01,
+0x01,0x01,0x02,0x02,0x02,0x03,0x03,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x01,0x01,0x01,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x01,
+0x00,0x01,0x01,0x01,0x01,0x01,0x02,0x02,0x02,0x02,0x02,0x02,0x03,0x03,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x01,0x01,0x01,0x01,0x01,
+0x01,0x00,0x00,0x00,0x00,0x01,0x00,0x01,0x01,0x01,0x01,0x01,0x01,0x02,0x02,0x02,
+0x03,0x03,0x03,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x01,0x01,0x01,0x01,0x00,0x01,0x00,0x01,0x01,0x01,0x00,0x01,0x01,0x01,0x01,0x01,
+0x01,0x02,0x02,0x02,0x02,0x02,0x03,0x03,0x03,0x04,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x00,
+0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x02,0x02,0x02,0x02,0x02,0x03,0x03,0x03,0x04,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x01,0x01,0x01,
+0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x02,0x02,0x02,0x02,0x02,
+0x03,0x03,0x03,0x04,0x04,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,
+0x01,0x02,0x02,0x02,0x02,0x02,0x03,0x03,0x03,0x03,0x04,0x04,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x02,0x01,0x01,0x01,0x01,0x01,0x01,
+0x01,0x01,0x01,0x01,0x01,0x02,0x02,0x02,0x02,0x02,0x02,0x03,0x03,0x03,0x03,0x04,
+0x04,0x05,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x02,
+0x02,0x01,0x01,0x01,0x01,0x01,0x01,0x02,0x01,0x02,0x01,0x02,0x02,0x02,0x02,0x02,
+0x02,0x03,0x03,0x03,0x04,0x04,0x04,0x05,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x02,0x02,0x01,0x02,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,
+0x01,0x02,0x02,0x02,0x02,0x02,0x02,0x03,0x03,0x03,0x04,0x04,0x04,0x05,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x59,0x4E,0x4E,0x4E,0x4D,0x4D,0x4B,0x4B,0x4B,0x4B,0x4B,0x4A,0x4B,0x4B,
+0x4A,0x47,0x4A,0x48,0x47,0x47,0x47,0x47,0x45,0x45,0x48,0x4B,0x00,0x00,0x00,0x00,
+0x00,0x00,0x50,0x47,0x48,0x45,0x47,0x45,0x45,0x45,0x45,0x45,0x43,0x43,0x45,0x46,
+0x46,0x43,0x41,0x42,0x42,0x41,0x41,0x41,0x3E,0x40,0x42,0x48,0x00,0x00,0x00,0x00,
+0x00,0x00,0x52,0x48,0x47,0x48,0x48,0x47,0x46,0x48,0x47,0x46,0x48,0x45,0x45,0x43,
+0x42,0x43,0x42,0x41,0x42,0x45,0x43,0x42,0x42,0x43,0x41,0x47,0x00,0x00,0x00,0x00,
+0x00,0x00,0x50,0x4A,0x4A,0x48,0x47,0x47,0x47,0x48,0x48,0x48,0x48,0x48,0x45,0x43,
+0x43,0x43,0x42,0x42,0x42,0x42,0x42,0x43,0x43,0x45,0x41,0x4A,0x00,0x00,0x00,0x00,
+0x00,0x00,0x53,0x4D,0x4B,0x4A,0x4B,0x4A,0x48,0x47,0x48,0x48,0x46,0x47,0x48,0x4A,
+0x47,0x42,0x45,0x46,0x42,0x46,0x45,0x43,0x45,0x45,0x46,0x4B,0x00,0x00,0x00,0x00,
+0x00,0x00,0x55,0x4E,0x4B,0x4B,0x4B,0x4A,0x48,0x4A,0x47,0x47,0x48,0x48,0x48,0x46,
+0x43,0x45,0x46,0x43,0x45,0x46,0x42,0x43,0x45,0x46,0x46,0x4E,0x00,0x00,0x00,0x00,
+0x00,0x00,0x52,0x4E,0x4D,0x4B,0x48,0x4A,0x4A,0x4A,0x48,0x4A,0x4A,0x4A,0x4A,0x45,
+0x46,0x45,0x46,0x46,0x45,0x46,0x43,0x46,0x45,0x46,0x46,0x4D,0x00,0x00,0x00,0x00,
+0x00,0x00,0x52,0x50,0x4D,0x4D,0x47,0x48,0x47,0x47,0x48,0x48,0x48,0x48,0x48,0x46,
+0x45,0x46,0x46,0x45,0x43,0x45,0x45,0x43,0x46,0x46,0x46,0x4B,0x00,0x00,0x00,0x00,
+0x00,0x00,0x52,0x4D,0x4A,0x4A,0x48,0x4A,0x47,0x46,0x48,0x48,0x48,0x47,0x45,0x45,
+0x46,0x45,0x46,0x45,0x41,0x43,0x43,0x45,0x41,0x46,0x47,0x4B,0x00,0x00,0x00,0x00,
+0x00,0x00,0x52,0x4D,0x4B,0x4A,0x47,0x48,0x46,0x46,0x46,0x46,0x46,0x45,0x45,0x45,
+0x46,0x46,0x42,0x42,0x42,0x42,0x42,0x41,0x43,0x45,0x45,0x4B,0x00,0x00,0x00,0x00,
+0x00,0x00,0x50,0x4B,0x4A,0x48,0x48,0x46,0x45,0x45,0x46,0x47,0x46,0x45,0x43,0x42,
+0x42,0x41,0x41,0x40,0x41,0x41,0x40,0x42,0x41,0x42,0x43,0x48,0x00,0x00,0x00,0x00,
+0x00,0x00,0x50,0x4B,0x48,0x48,0x47,0x47,0x45,0x46,0x43,0x45,0x45,0x43,0x41,0x3F,
+0x3F,0x41,0x40,0x40,0x40,0x42,0x3F,0x42,0x42,0x40,0x42,0x47,0x00,0x00,0x00,0x00,
+0x00,0x00,0x4E,0x4B,0x4A,0x47,0x45,0x45,0x43,0x46,0x45,0x45,0x45,0x42,0x42,0x41,
+0x3E,0x42,0x41,0x41,0x41,0x40,0x3E,0x40,0x41,0x40,0x40,0x43,0x00,0x00,0x00,0x00,
+0x00,0x00,0x43,0x4B,0x4D,0x4D,0x4B,0x4A,0x4A,0x4A,0x4A,0x4A,0x4A,0x48,0x48,0x47,
+0x45,0x45,0x46,0x45,0x45,0x46,0x43,0x46,0x46,0x46,0x46,0x4A,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
+0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
+0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
+0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
+0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
+0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
+0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xD0,0x01,0x43,0x43,0x00,0x00,0x45,0x22
};
-
file:0650103bcec2b7a43e4bd5345542f835962d59e1 -> file:65eabe013b662e0172f456d330abd07b0187b61b
--- a/drivers/input/touchscreen/mms_ts_fw.h
+++ b/drivers/input/touchscreen/mms_ts_fw.h
@@ -37,7 +37,7 @@ const u8 MELFAS_binary[] = {
|| defined(CONFIG_MACH_SUPERIORLTE_SKT)\
|| defined(CONFIG_MACH_K2_KDI)
/* 4.8" OCTA LCD */
-#define FW_VERSION 0xBB
+#define FW_VERSION 0xBD
#include "d2_fw.h"
/* 4.65" OCTA LCD */
#define FW_465_VERSION 0xA8
file:122b45d9ab6d4b50da9ffc73b6e7154c9464d330 -> file:35ee3eaaac398c0c4aa04cbfefa223a98bfb51d0
--- a/drivers/input/touchscreen/msm_ts.c
+++ b/drivers/input/touchscreen/msm_ts.c
@@ -387,6 +387,7 @@ static int __devinit msm_ts_probe(struct
input_set_capability(ts->input_dev, EV_KEY, BTN_TOUCH);
set_bit(EV_ABS, ts->input_dev->evbit);
+ set_bit(INPUT_PROP_DIRECT, ts->input_dev->propbit);
input_set_abs_params(ts->input_dev, ABS_X, pdata->min_x, pdata->max_x,
0, 0);
file:793f06399baab61880074474d67513ceab5bd5fc -> file:48279ee620b85fc3adfa0642af68f78871e64040
--- a/drivers/media/radio/radio-iris.c
+++ b/drivers/media/radio/radio-iris.c
@@ -1588,8 +1588,8 @@ static void hci_cc_fm_disable_rsp(struct
if (status)
return;
-
- iris_q_event(radio, IRIS_EVT_RADIO_DISABLED);
+ if (radio->mode != FM_CALIB)
+ iris_q_event(radio, IRIS_EVT_RADIO_DISABLED);
radio_hci_req_complete(hdev, status);
}
@@ -1627,8 +1627,8 @@ static void hci_cc_fm_enable_rsp(struct
if (rsp->status)
return;
-
- iris_q_event(radio, IRIS_EVT_RADIO_READY);
+ if (radio->mode != FM_CALIB)
+ iris_q_event(radio, IRIS_EVT_RADIO_READY);
radio_hci_req_complete(hdev, rsp->status);
}
@@ -1879,6 +1879,7 @@ static inline void hci_cmd_complete_even
switch (opcode) {
case hci_recv_ctrl_cmd_op_pack(HCI_OCF_FM_ENABLE_RECV_REQ):
+ case hci_trans_ctrl_cmd_op_pack(HCI_OCF_FM_ENABLE_TRANS_REQ):
hci_cc_fm_enable_rsp(hdev, skb);
break;
case hci_recv_ctrl_cmd_op_pack(HCI_OCF_FM_GET_RECV_CONF_REQ):
@@ -1886,6 +1887,7 @@ static inline void hci_cmd_complete_even
break;
case hci_recv_ctrl_cmd_op_pack(HCI_OCF_FM_DISABLE_RECV_REQ):
+ case hci_trans_ctrl_cmd_op_pack(HCI_OCF_FM_DISABLE_TRANS_REQ):
hci_cc_fm_disable_rsp(hdev, skb);
break;
@@ -1900,8 +1902,6 @@ static inline void hci_cmd_complete_even
case hci_recv_ctrl_cmd_op_pack(HCI_OCF_FM_EN_WAN_AVD_CTRL):
case hci_recv_ctrl_cmd_op_pack(HCI_OCF_FM_EN_NOTCH_CTRL):
case hci_recv_ctrl_cmd_op_pack(HCI_OCF_FM_SET_CH_DET_THRESHOLD):
- case hci_trans_ctrl_cmd_op_pack(HCI_OCF_FM_ENABLE_TRANS_REQ):
- case hci_trans_ctrl_cmd_op_pack(HCI_OCF_FM_DISABLE_TRANS_REQ):
case hci_trans_ctrl_cmd_op_pack(HCI_OCF_FM_RDS_RT_REQ):
case hci_trans_ctrl_cmd_op_pack(HCI_OCF_FM_RDS_PS_REQ):
case hci_common_cmd_op_pack(HCI_OCF_FM_DEFAULT_DATA_WRITE):
@@ -2461,23 +2461,27 @@ static int iris_do_calibration(struct ir
int retval = 0x00;
cal_mode = PROCS_CALIB_MODE;
+ radio->mode = FM_CALIB;
retval = hci_cmd(HCI_FM_ENABLE_RECV_CMD,
radio->fm_hdev);
if (retval < 0) {
FMDERR("Enable failed before calibration %x", retval);
+ radio->mode = FM_OFF;
return retval;
}
retval = radio_hci_request(radio->fm_hdev, hci_fm_do_cal_req,
(unsigned long)cal_mode, RADIO_HCI_TIMEOUT);
if (retval < 0) {
FMDERR("Do Process calibration failed %x", retval);
+ radio->mode = FM_RECV;
return retval;
}
retval = hci_cmd(HCI_FM_DISABLE_RECV_CMD,
radio->fm_hdev);
if (retval < 0)
FMDERR("Disable Failed after calibration %d", retval);
- return retval;
+ radio->mode = FM_OFF;
+ return retval;
}
static int iris_vidioc_g_ctrl(struct file *file, void *priv,
struct v4l2_control *ctrl)
@@ -2850,12 +2854,12 @@ static int iris_vidioc_s_ctrl(struct fil
case FM_TRANS:
retval = hci_cmd(HCI_FM_ENABLE_TRANS_CMD,
radio->fm_hdev);
- radio->mode = FM_TRANS;
if (retval < 0) {
FMDERR("Error while enabling TRANS FM"
" %d\n", retval);
return retval;
}
+ radio->mode = FM_TRANS;
retval = hci_cmd(HCI_FM_GET_TX_CONFIG, radio->fm_hdev);
if (retval < 0)
FMDERR("get frequency failed %d\n", retval);
@@ -2865,17 +2869,23 @@ static int iris_vidioc_s_ctrl(struct fil
case FM_RECV:
retval = hci_cmd(HCI_FM_DISABLE_RECV_CMD,
radio->fm_hdev);
- if (retval < 0)
+ if (retval < 0) {
FMDERR("Err on disable recv FM"
" %d\n", retval);
+ return retval;
+ }
+ radio->mode = FM_OFF;
break;
case FM_TRANS:
retval = hci_cmd(HCI_FM_DISABLE_TRANS_CMD,
radio->fm_hdev);
- if (retval < 0)
+ if (retval < 0) {
FMDERR("Err disabling trans FM"
" %d\n", retval);
+ return retval;
+ }
+ radio->mode = FM_OFF;
break;
default:
retval = -EINVAL;
file:a6dac7aad99c744ec61da492a44501cfcbf083c7 -> file:4800f665b5627952709c40c85aea1fe2b3594eaf
--- a/drivers/media/radio/radio-tavarua.c
+++ b/drivers/media/radio/radio-tavarua.c
@@ -3155,7 +3155,7 @@ static int tavarua_vidioc_s_ctrl(struct
* queue the READY event from the host side
* in case of FM off
*/
- tavarua_q_event(radio, TAVARUA_EVT_RADIO_READY);
+ tavarua_q_event(radio, TAVARUA_EVT_RADIO_DISABLED);
FMDBG("%s, Disable All Interrupts\n", __func__);
/* disable irq */
file:fe7c99f05b8d29814e9979f853949d42391a1f99 -> file:f72ac94a5ed898da7c697eee45d59cd268db6fbd
--- a/drivers/media/video/msm/gemini/msm_gemini_sync.c
+++ b/drivers/media/video/msm/gemini/msm_gemini_sync.c
@@ -473,11 +473,12 @@ int msm_gemini_input_buf_enqueue(struct
} else {
buf_p->y_buffer_addr = msm_gemini_platform_v2p(buf_cmd.fd,
buf_cmd.y_len + buf_cmd.cbcr_len, &buf_p->file,
- &buf_p->handle) + buf_cmd.offset;
+ &buf_p->handle) + buf_cmd.offset + buf_cmd.y_off;
}
buf_p->y_len = buf_cmd.y_len;
- buf_p->cbcr_buffer_addr = buf_p->y_buffer_addr + buf_cmd.y_len;
+ buf_p->cbcr_buffer_addr = buf_p->y_buffer_addr + buf_cmd.y_len +
+ buf_cmd.cbcr_off;
buf_p->cbcr_len = buf_cmd.cbcr_len;
buf_p->num_of_mcu_rows = buf_cmd.num_of_mcu_rows;
file:42c6ed30b76253914cf1fa96c4909ae1d8b93178 -> file:c374c72a07715fcdb5a48d80c3301b6f0f932d30
--- a/drivers/media/video/msm/msm.c
+++ b/drivers/media/video/msm/msm.c
@@ -131,6 +131,7 @@ static int msm_server_control(struct msm
struct msm_ctrl_cmd *ctrlcmd;
struct msm_device_queue *queue = &server_dev->ctrl_q;
void *ctrlcmd_data;
+ uint8_t wait_count;
struct v4l2_event v4l2_evt;
struct msm_isp_event_ctrl *isp_event;
@@ -156,6 +157,7 @@ static int msm_server_control(struct msm
ctrlcmd_data = kzalloc(out->length, GFP_KERNEL);
if (!ctrlcmd_data) {
kfree(isp_event);
+ *((uint32_t *)v4l2_evt.u.data) = NULL; //MSM.C_DOUBLE_FREE
pr_err("%s Insufficient memory. return", __func__);
return -ENOMEM;
}
@@ -171,20 +173,29 @@ static int msm_server_control(struct msm
/* wait for config return status */
D("Waiting for config status\n");
- rc = wait_event_interruptible_timeout(queue->wait,
- !list_empty_careful(&queue->list),
- msecs_to_jiffies(out->timeout_ms));
+ wait_count = 2;
+ do {
+ rc = wait_event_interruptible_timeout(queue->wait,
+ !list_empty_careful(&queue->list),
+ msecs_to_jiffies(out->timeout_ms));
+ wait_count--;
+ if (rc != -ERESTARTSYS)
+ break;
+ D("%s: wait_event interrupted by signal, remain_count = %d",
+ __func__, wait_count);
+ } while (wait_count > 0);
D("Waiting is over for config status\n");
if (list_empty_careful(&queue->list)) {
if (!rc)
rc = -ETIMEDOUT;
if (rc < 0) {
rcmd = msm_dequeue(queue, list_control);
- if (!rcmd) {
+ if (rcmd) {
free_qcmd(rcmd);
rcmd = NULL;
}
kfree(isp_event);
+ *((uint32_t *)v4l2_evt.u.data) = NULL; //MSM.C_DOUBLE_FREE
if (g_server_dev.server_evt_id == 0)
g_server_dev.server_evt_id++;
pr_err("%s: wait_event error %d\n", __func__, rc);
@@ -243,7 +254,7 @@ static int msm_send_close_server(int vno
{
int rc = 0;
struct msm_ctrl_cmd ctrlcmd;
- D("%s\n", __func__);
+ pr_err("%s\n", __func__);
ctrlcmd.type = MSM_V4L2_CLOSE;
ctrlcmd.timeout_ms = 10000;
ctrlcmd.length = strnlen(g_server_dev.config_info.config_dev_name[0],
@@ -2025,6 +2036,7 @@ static long msm_ioctl_server(struct file
break;
}
kfree(k_isp_event);
+ (*((uint32_t *)ev.u.data)) = NULL; //MSM.C_DOUBLE_FREE
k_isp_event = NULL;
break;
}
@@ -2127,7 +2139,7 @@ static long msm_v4l2_evt_notify(struct m
ERR_COPY_FROM_USER();
return -EFAULT;
}
-
+ pr_err("%s: Sending event to HAL with type %x\n", __func__, v4l2_ev.type);
pcam = mctl->sync.pcam_sync;
ktime_get_ts(&v4l2_ev.timestamp);
v4l2_event_queue(pcam->pvdev, &v4l2_ev);
@@ -2281,6 +2293,15 @@ static long msm_ioctl_config(struct file
rc = -EINVAL;
break;
+ case MCTL_CAM_IOCTL_SET_FOCUS:
+ if (copy_from_user(&config_cam->p_mctl->sync.focus_state,
+ (void __user *)arg, sizeof(uint32_t))) {
+ ERR_COPY_FROM_USER();
+ rc = -EINVAL;
+ break;
+ }
+ break;
+
default:{
/* For the rest of config command, forward to media controller*/
struct msm_cam_media_controller *p_mctl = config_cam->p_mctl;
file:7306b68a21fc13049a6b5c90173b2e5f9b461a4e -> file:05b9b0f5c319c19e3d39c2c58118c873cfa6800d
--- a/drivers/media/video/msm/msm_vfe32.c
+++ b/drivers/media/video/msm/msm_vfe32.c
@@ -370,7 +370,7 @@ static void vfe32_stop(void)
unsigned long flags;
atomic_set(&vfe32_ctrl->vstate, 0);
-
+ mutex_lock(&vfe32_ctrl->vfe_lock);
/* for reset hw modules, and send msg when reset_irq comes.*/
spin_lock_irqsave(&vfe32_ctrl->stop_flag_lock, flags);
vfe32_ctrl->stop_ack_pending = TRUE;
@@ -422,6 +422,7 @@ static void vfe32_stop(void)
to the command register using the barrier */
msm_io_w_mb(VFE_RESET_UPON_STOP_CMD,
vfe32_ctrl->vfebase + VFE_GLOBAL_RESET);
+ mutex_unlock(&vfe32_ctrl->vfe_lock);
}
static void vfe32_subdev_notify(int id, int path)
@@ -745,6 +746,7 @@ static int vfe32_zsl(void)
struct msm_sync *sync = vfe_syncdata;
uint32_t irq_comp_mask = 0;
/* capture command is valid for both idle and active state. */
+ mutex_lock(&vfe32_ctrl->vfe_lock);
irq_comp_mask =
msm_io_r(vfe32_ctrl->vfebase + VFE_IRQ_COMP_MASK);
@@ -808,6 +810,7 @@ static int vfe32_zsl(void)
msm_io_w(1, vfe32_ctrl->vfebase + 0x18C);
msm_io_w(1, vfe32_ctrl->vfebase + 0x188);
+ mutex_unlock(&vfe32_ctrl->vfe_lock);
return 0;
}
static int vfe32_capture_raw(uint32_t num_frames_capture)
@@ -904,6 +907,7 @@ static int vfe32_start(void)
uint32_t irq_comp_mask = 0;
struct msm_sync *sync = vfe_syncdata;
+ mutex_lock(&vfe32_ctrl->vfe_lock);
irq_comp_mask =
msm_io_r(vfe32_ctrl->vfebase + VFE_IRQ_COMP_MASK);
@@ -968,6 +972,7 @@ static int vfe32_start(void)
msm_camio_bus_scale_cfg(
sync->sdata->pdata->cam_bus_scale_table, S_PREVIEW);
vfe32_start_common();
+ mutex_unlock(&vfe32_ctrl->vfe_lock);
return 0;
}
@@ -2744,6 +2749,14 @@ static void vfe32_process_reset_irq(void
static void vfe32_process_camif_sof_irq(void)
{
+ struct msm_sync *sync;
+ sync = v4l2_get_subdev_hostdata(&vfe32_ctrl->subdev);
+ /*first zero out focus bit*/
+ vfe32_ctrl->vfeFrameId = vfe32_ctrl->vfeFrameId &
+ CLEAR_FOCUS_BIT;
+ /*now set correct focus value*/
+ vfe32_ctrl->vfeFrameId = vfe32_ctrl->vfeFrameId |
+ get_focus_in_position(sync->focus_state);
if (vfe32_ctrl->operation_mode ==
VFE_OUTPUTS_RAW) {
if (vfe32_ctrl->start_ack_pending) {
@@ -2761,12 +2774,22 @@ static void vfe32_process_camif_sof_irq(
} /* if raw snapshot mode. */
if ((vfe32_ctrl->hfr_mode != HFR_MODE_OFF) &&
(vfe32_ctrl->operation_mode == VFE_MODE_OF_OPERATION_VIDEO) &&
- (vfe32_ctrl->vfeFrameId % vfe32_ctrl->hfr_mode != 0)) {
- vfe32_ctrl->vfeFrameId++;
+ ((get_frame_num(vfe32_ctrl->vfeFrameId))
+ % vfe32_ctrl->hfr_mode != 0)) {
+ if ((get_frame_num(vfe32_ctrl->vfeFrameId))
+ == VFE_FRAME_NUM_MAX)
+ vfe32_ctrl->vfeFrameId = vfe32_ctrl->vfeFrameId &
+ ZERO_OUT_FRAME;
+ vfe32_ctrl->vfeFrameId =
+ increment_frame_num(vfe32_ctrl->vfeFrameId);
CDBG("Skip the SOF notification when HFR enabled\n");
return;
}
- vfe32_ctrl->vfeFrameId++;
+ if ((get_frame_num(vfe32_ctrl->vfeFrameId))
+ == VFE_FRAME_NUM_MAX)
+ vfe32_ctrl->vfeFrameId = vfe32_ctrl->vfeFrameId &
+ ZERO_OUT_FRAME;
+ vfe32_ctrl->vfeFrameId = increment_frame_num(vfe32_ctrl->vfeFrameId);
vfe32_send_isp_msg(vfe32_ctrl, MSG_ID_SOF_ACK);
CDBG("camif_sof_irq, frameId = %d\n", vfe32_ctrl->vfeFrameId);
@@ -3361,7 +3384,8 @@ static void vfe32_process_stats_irq(uint
uint32_t status_bits = VFE_COM_STATUS & *irqstatus;
if ((vfe32_ctrl->hfr_mode != HFR_MODE_OFF) &&
- (vfe32_ctrl->vfeFrameId % vfe32_ctrl->hfr_mode != 0)) {
+ ((get_frame_num(vfe32_ctrl->vfeFrameId))
+ % vfe32_ctrl->hfr_mode != 0)) {
CDBG("Skip the stats when HFR enabled\n");
return;
}
@@ -3895,6 +3919,7 @@ int msm_vfe_subdev_init(struct v4l2_subd
spin_lock_init(&vfe32_ctrl->cs_ack_lock);
spin_lock_init(&vfe32_ctrl->comp_stats_ack_lock);
spin_lock_init(&vfe32_ctrl->sd_notify_lock);
+ mutex_init(&vfe32_ctrl->vfe_lock);
INIT_LIST_HEAD(&vfe32_ctrl->tasklet_q);
vfe32_ctrl->update_linear = false;
file:62c363978949157c7c8a3ec078d57541e888f013 -> file:e188c048b16a82fd8666430b7ea3b0ad29475133
--- a/drivers/media/video/msm/msm_vfe32.h
+++ b/drivers/media/video/msm/msm_vfe32.h
@@ -919,6 +919,7 @@ struct vfe32_ctrl_type {
uint32_t extlen;
void *extdata;
+ struct mutex vfe_lock;
int8_t start_ack_pending;
int8_t stop_ack_pending;
file:b8e05684afde152b528df7fe1ec3476524bc160f -> file:010c3494ed70fd43a64ad0a0ecf338f11dd07b68
--- a/drivers/media/video/msm/sensors/msm_sensor.c
+++ b/drivers/media/video/msm/sensors/msm_sensor.c
@@ -143,7 +143,7 @@ int32_t msm_sensor_set_fps(struct msm_se
total_lines_per_frame = (uint16_t)
((s_ctrl->curr_frame_length_lines) *
s_ctrl->fps_divider/Q10);
-
+ total_lines_per_frame += (total_lines_per_frame & 0x1);
rc = msm_camera_i2c_write(s_ctrl->sensor_i2c_client,
s_ctrl->sensor_output_reg_addr->frame_length_lines,
total_lines_per_frame, MSM_CAMERA_I2C_WORD_DATA);
file:bf7713427883e048061ff140246c92243519d894 -> file:d2b0a9f98c89c35b09709438e5f7e500b04748a9
--- a/drivers/media/video/msm/wfd/wfd-ioctl.c
+++ b/drivers/media/video/msm/wfd/wfd-ioctl.c
@@ -148,7 +148,7 @@ static int wfd_allocate_ion_buffer(struc
bool secure, struct mem_region *mregion)
{
struct ion_handle *handle;
- void *kvaddr, *phys_addr;
+ void *kvaddr = NULL, *phys_addr = NULL;
unsigned long size;
unsigned int alloc_regions = 0;
int rc;
@@ -194,7 +194,9 @@ static int wfd_allocate_ion_buffer(struc
return rc;
alloc_fail:
if (!IS_ERR_OR_NULL(handle)) {
- ion_unmap_kernel(client, handle);
+ if (!IS_ERR_OR_NULL(kvaddr))
+ ion_unmap_kernel(client, handle);
+
ion_free(client, handle);
mregion->kvaddr = NULL;
file:309bdbd22931f4f95bcb6077ddb3f562019504ab -> file:28b279c63ad71e21fc1581b787af46f7e8ed9724
--- a/drivers/media/video/msm_zsl/msm.c
+++ b/drivers/media/video/msm_zsl/msm.c
@@ -35,6 +35,7 @@ static struct msm_cam_server_dev g_serve
static struct class *msm_class;
static dev_t msm_devno;
static int vnode_count;
+unsigned int open_fail_flag;
module_param(msm_camera_v4l2_nr, uint, 0644);
MODULE_PARM_DESC(msm_camera_v4l2_nr, "videoX start number, -1 is autodetect");
@@ -1417,6 +1418,7 @@ static int msm_open_init(struct msm_cam_
struct msm_cam_v4l2_dev_inst *pcam_inst)
{
int rc;
+ open_fail_flag = 0;
rc = msm_cam_server_open_session(&g_server_dev, pcam);
if (rc < 0) {
@@ -1467,6 +1469,7 @@ static int msm_open_init(struct msm_cam_
rc = msm_send_open_server(pcam->vnode_id);
if (rc < 0) {
+ open_fail_flag = 1;
pr_err("%s failed\n", __func__);
goto fail5;
}
@@ -1489,6 +1492,7 @@ fail1:
fail:
msm_cam_server_close_session(&g_server_dev, pcam);
end:
+ open_fail_flag = 0;
return rc;
}
file:29b722c52d9c583428a6044492615b1c5d6d6b46 -> file:08d3c54aea863d31fee36c8865eb8a3ab115e2a3
--- a/drivers/media/video/msm_zsl/msm_vfe32.c
+++ b/drivers/media/video/msm_zsl/msm_vfe32.c
@@ -30,6 +30,7 @@
#include "msm_ispif.h" /*aswoogi_zsl */
atomic_t irq_cnt;
+extern unsigned int open_fail_flag;
#define QC_TEST
@@ -1445,7 +1446,7 @@ static int vfe32_proc_general(struct msm
CDBG("vfe32_proc_general: cmdID = %s, length = %d\n",
vfe32_general_cmd[cmd->id], cmd->length);
- if (vfe32_ctrl->vfebase == NULL) {
+ if (vfe32_ctrl->vfebase == NULL || open_fail_flag) {
pr_err("Error : vfe32_ctrl->vfebase is NULL!!\n");
pr_err("vfe32_proc_general: cmdID = %s, length = %d\n",
vfe32_general_cmd[cmd->id], cmd->length);
file:6d2140973d6d275c7db224f175c3864af3529e2e -> file:0a2f328bd82fffc026b349ee3ab2f1a9cac1347f
--- a/drivers/media/video/msm_zsl/sensors/s5c73m3.c
+++ b/drivers/media/video/msm_zsl/sensors/s5c73m3.c
@@ -1095,6 +1095,11 @@ static int s5c73m3_set_effect(int effect
S5C73M3_IMAGE_EFFECT_POINT_COLOR_4);
break;
+ case CAMERA_EFFECT_CARTOONIZE:
+ rc = s5c73m3_writeb(S5C73M3_IMAGE_EFFECT,
+ S5C73M3_IMAGE_EFFECT_CARTOONIZE);
+ break;
+
default:
CAM_DBG_M("default effect\n");
rc = s5c73m3_writeb(S5C73M3_IMAGE_EFFECT,
file:a0b21fa1e124050aa5f82b98455906d98f34370a -> file:a18a3f35411ab22dafaf7b3c2676aa143ef4d34c
--- a/drivers/media/video/msm_zsl/sensors/s5c73m3.h
+++ b/drivers/media/video/msm_zsl/sensors/s5c73m3.h
@@ -316,7 +316,7 @@ enum s5c73m3_fw_path {
#define S5C73M3_IMAGE_EFFECT_POINT_COLOR_2 0x000D
#define S5C73M3_IMAGE_EFFECT_POINT_COLOR_3 0x000E
#define S5C73M3_IMAGE_EFFECT_POINT_COLOR_4 0x000F
-
+#define S5C73M3_IMAGE_EFFECT_CARTOONIZE 0x001A
#define S5C73M3_IMAGE_QUALITY 0x0B0C
#define S5C73M3_IMAGE_QUALITY_SUPERFINE 0x0000
@@ -336,7 +336,12 @@ enum s5c73m3_fw_path {
#define S5C73M3_FLASH_TORCH 0x0B12
#define S5C73M3_FLASH_TORCH_OFF 0x0000
+
+#if defined(CONFIG_MACH_M2_DCM)
+#define S5C73M3_FLASH_TORCH_ON 0x0004
+#else
#define S5C73M3_FLASH_TORCH_ON 0x0001
+#endif
#define S5C73M3_AE_ISNEEDFLASH 0x0CBA
#define S5C73M3_AE_ISNEEDFLASH_OFF 0x0000
file:3607d9e3acb7ed5a8d87915d4d1758e9920762b7 -> file:ca18256c943f501d4776880d4f0509d5e1ed228c
--- a/drivers/misc/a2220_firmware.h
+++ b/drivers/misc/a2220_firmware.h
@@ -23,7 +23,7 @@
#include "a2220_firmware_aegis2.h"
#elif defined(CONFIG_MACH_JASPER)
#include "a2220_firmware_jasper.h"
-#elif defined(_d2tmo_)
+#elif defined(_d2tmo_) || defined(_d2ltetmo_)
#include "a2220_firmware_t999.h"
#else
#include "a2220_firmware_i747.h"
file:d23ca038dcdc236fa1886dc339d97ae84be46962 -> file:7f488fa3f8a647ee399d1d46116ae76b529aac3c
--- a/drivers/misc/fsa9485.c
+++ b/drivers/misc/fsa9485.c
@@ -154,7 +154,10 @@ struct fsa9485_usbsw {
struct input_dev *input;
int previous_key;
+ int dock_ready;
+
struct delayed_work init_work;
+ struct delayed_work audio_work;
struct mutex mutex;
int adc;
int deskdock;
@@ -210,6 +213,38 @@ static void EnableFSA9480Interrupts(void
}
+#if defined(CONFIG_MACH_AEGIS2)
+void fsa9485_checkandhookaudiodockfornoise(int value)
+{
+ struct i2c_client *client = local_usbsw->client;
+ int ret = 0;
+
+ if (isDeskdockconnected) {
+ ret = i2c_smbus_write_byte_data(client,
+ FSA9485_REG_MANSW1, value);
+
+ if (ret < 0)
+ dev_err(&client->dev, "%s: err %d\n",
+ __func__, ret);
+
+ ret = i2c_smbus_read_byte_data(client,
+ FSA9485_REG_CTRL);
+
+ if (ret < 0)
+ dev_err(&client->dev, "%s: err %d\n",
+ __func__, ret);
+
+ ret = i2c_smbus_write_byte_data(client,
+ FSA9485_REG_CTRL,
+ ret & ~CON_MANUAL_SW & ~CON_RAW_DATA);
+ if (ret < 0)
+ dev_err(&client->dev,
+ "%s: err %d\n", __func__, ret);
+ } else
+ pr_info("Dock is not connect\n");
+}
+#endif
+
void FSA9485_CheckAndHookAudioDock(int value)
{
struct i2c_client *client = local_usbsw->client;
@@ -633,12 +668,14 @@ static int fsa9485_detect_dev(struct fsa
if (usbsw->dock_attached)
pdata->dock_cb(FSA9485_DETACHED_DOCK);
- if (adc == 0x10)
- val2 = DEV_SMARTDOCK;
- else if (adc == 0x12)
- val2 = DEV_AUDIO_DOCK;
+ if (local_usbsw->dock_ready == 1)
+ if (adc == 0x10)
+ val2 = DEV_SMARTDOCK;
+ else if (adc == 0x12)
+ val2 = DEV_AUDIO_DOCK;
- dev_info(&client->dev, "dev1: 0x%x, dev2: 0x%x adc : 0x%x\n", val1, val2, adc);
+ dev_info(&client->dev, "dev1: 0x%x, dev2: 0x%x adc : 0x%x\n",
+ val1, val2, adc);
/* Attached */
if (val1 || val2) {
@@ -819,7 +856,7 @@ static int fsa9485_detect_dev(struct fsa
dev_err(&client->dev,
"%s: err %d\n", __func__, ret);
- if (pdata->smartdock_cb)
+ if (pdata->audio_dock_cb)
pdata->audio_dock_cb(FSA9485_ATTACHED);
}
/* Detached */
@@ -928,7 +965,7 @@ static int fsa9485_detect_dev(struct fsa
dev_err(&client->dev,
"%s: err %d\n", __func__, ret);
- if (pdata->smartdock_cb)
+ if (pdata->audio_dock_cb)
pdata->audio_dock_cb(FSA9485_DETACHED);
usbsw->adc = 0;
}
@@ -1122,7 +1159,6 @@ static irqreturn_t fsa9485_irq_thread(in
}
return IRQ_HANDLED;
}
-
return IRQ_HANDLED;
}
@@ -1167,6 +1203,20 @@ static void fsa9485_init_detect(struct w
"failed to enable irq init %s\n", __func__);
}
+static void fsa9485_delayed_audio(struct work_struct *work)
+{
+ struct fsa9485_usbsw *usbsw = container_of(work,
+ struct fsa9485_usbsw, audio_work.work);
+
+ dev_info(&usbsw->client->dev, "%s\n", __func__);
+
+ local_usbsw->dock_ready = 1;
+
+ mutex_lock(&usbsw->mutex);
+ fsa9485_detect_dev(usbsw);
+ mutex_unlock(&usbsw->mutex);
+}
+
static int __devinit fsa9485_probe(struct i2c_client *client,
const struct i2c_device_id *id)
{
@@ -1278,10 +1328,13 @@ static int __devinit fsa9485_probe(struc
if (usbsw->pdata->set_init_flag)
usbsw->pdata->set_init_flag();
+
+ local_usbsw->dock_ready = 0;
/* initial cable detection */
INIT_DELAYED_WORK(&usbsw->init_work, fsa9485_init_detect);
schedule_delayed_work(&usbsw->init_work, msecs_to_jiffies(2700));
-
+ INIT_DELAYED_WORK(&usbsw->audio_work, fsa9485_delayed_audio);
+ schedule_delayed_work(&usbsw->audio_work, msecs_to_jiffies(20000));
return 0;
err_create_file_reset_switch:
@@ -1306,6 +1359,7 @@ static int __devexit fsa9485_remove(stru
struct fsa9485_usbsw *usbsw = i2c_get_clientdata(client);
cancel_delayed_work(&usbsw->init_work);
+ cancel_delayed_work(&usbsw->audio_work);
if (client->irq) {
disable_irq_wake(client->irq);
free_irq(client->irq, usbsw);
file:ebb4afe6c70242ce2bd48ef6db101df5dd284d40 -> file:c0e37be7bfec08202b7051c797970af596ee3b42
--- a/drivers/mmc/card/Kconfig
+++ b/drivers/mmc/card/Kconfig
@@ -76,3 +76,9 @@ config MMC_TEST
This driver is only of interest to those developing or
testing a host driver. Most people should say N here.
+
+config MMC_CPRM
+ tristate "MMC CPRM driver"
+ default y
+ help
+ Say Y here to enable the MMC cprm driver
file:fa7053f6649f75223d3f018e4fadd222862653cb -> file:fad6e00c3cacb41f68303f8b8359e96759f1d496
--- a/drivers/mmc/card/Makefile
+++ b/drivers/mmc/card/Makefile
@@ -4,15 +4,9 @@
obj-$(CONFIG_MMC_BLOCK) += mmc_block.o
mmc_block-objs := block.o queue.o
-
-ifeq ($(CONFIG_MACH_M2_DCM),y)
+ifeq ($(CONFIG_MMC_CPRM),y)
mmc_block-objs += cprmdrv_samsung.o
endif
-
-ifeq ($(CONFIG_MACH_K2_KDI),y)
-mmc_block-objs += cprmdrv_samsung.o
-endif
-
obj-$(CONFIG_MMC_TEST) += mmc_test.o
obj-$(CONFIG_SDIO_UART) += sdio_uart.o
file:f7d3a37e5a5e63bbfad184e024adb1802b811c79 -> file:d5c1dda2f7881aee729da4f32677dcbdc4102625
--- a/drivers/mmc/card/block.c
+++ b/drivers/mmc/card/block.c
@@ -47,11 +47,8 @@
#include "queue.h"
MODULE_ALIAS("mmc:block");
-#if defined(CONFIG_MACH_M2_DCM) || defined(CONFIG_MACH_K2_KDI)
-#define MMC_ENABLE_CPRM
-#endif
-#ifdef MMC_ENABLE_CPRM
+#if defined(CONFIG_MMC_CPRM)
#include "cprmdrv_samsung.h"
#include <linux/ioctl.h>
#define MMC_IOCTL_BASE 0xB3 /* Same as MMC block device major number */
@@ -423,7 +420,7 @@ cmd_done:
static int mmc_blk_ioctl(struct block_device *bdev, fmode_t mode,
unsigned int cmd, unsigned long arg)
{
-#ifdef MMC_ENABLE_CPRM
+#if defined(CONFIG_MMC_CPRM)
struct mmc_blk_data *md = bdev->bd_disk->private_data;
struct mmc_card *card = md->queue.card;
@@ -434,7 +431,7 @@ static int mmc_blk_ioctl(struct block_de
if (cmd == MMC_IOC_CMD)
ret = mmc_blk_ioctl_cmd(bdev, (struct mmc_ioc_cmd __user *)arg);
-#ifdef MMC_ENABLE_CPRM
+#if defined(CONFIG_MMC_CPRM)
printk(KERN_DEBUG " %s ], %x ", __func__, cmd);
switch (cmd) {
@@ -447,7 +444,7 @@ static int mmc_blk_ioctl(struct block_de
int size = 0;
size = (int)get_capacity(md->disk) << 9;
- printk(KERN_DEBUG "%s:GET_SECTOR_COUNT size = %d\n",
+ printk(KERN_DEBUG "[%s]:MMC_IOCTL_GET_SECTOR_COUNT size = %d\n",
__func__, size);
return copy_to_user((void *)arg, &size, sizeof(u64));
@@ -461,25 +458,22 @@ static int mmc_blk_ioctl(struct block_de
case ACMD45:
case ACMD46:
case ACMD47:
- case ACMD48:
- {
- struct cprm_request *req = (struct cprm_request *)arg;
-
- printk(KERN_DEBUG "%s:cmd [%x]\n",
- __func__, cmd);
-
- if (cmd == ACMD43) {
- printk(KERN_DEBUG"storing acmd43 arg[%d] = %ul\n"
- , i, req->arg);
- temp_arg[i] = req->arg;
- i++;
- if (i >= 16) {
- printk(KERN_DEBUG"reset acmd43 i = %d\n",
- i);
+ case ACMD48: {
+ struct cprm_request *req = (struct cprm_request *)arg;
+
+ printk(KERN_DEBUG "%s:cmd [%x]\n",
+ __func__, cmd);
+
+ if (cmd == ACMD43) {
+ printk(KERN_DEBUG"storing acmd43 arg[%d] = %ul\n",
+ i, (unsigned int)req->arg);
+ temp_arg[i] = req->arg;
+ i++;
+ if (i >= 16) {
+ printk(KERN_DEBUG"reset acmd43 i = %d\n", i);
i = 0;
- }
}
-
+ }
if (cmd == ACMD45 && cprm_ake_retry_flag == 1) {
cprm_ake_retry_flag = 0;
@@ -487,21 +481,17 @@ static int mmc_blk_ioctl(struct block_de
for (i = 0; i < 16; i++) {
printk(KERN_DEBUG"calling ACMD43 with arg[%d] = %ul\n",
- i, temp_arg[i]);
- if (stub_sendcmd(card,
- ACMD43, temp_arg[i],
- 512, NULL) < 0) {
-
- printk(KERN_DEBUG"error ACMD43 %d\n",
- i);
- return -EINVAL;
- }
+ i, (unsigned int)temp_arg[i]);
+ if (stub_sendcmd(card, ACMD43, temp_arg[i],
+ 512, NULL) < 0) {
+ printk(KERN_DEBUG"error ACMD43 %d\n",
+ i);
+ return -EINVAL;
}
+ }
-
- printk(KERN_DEBUG"calling ACMD44\n");
- if (stub_sendcmd(card, ACMD44, NULL,
- 8, NULL) < 0) {
+ printk(KERN_DEBUG"calling ACMD44\n");
+ if (stub_sendcmd(card, ACMD44, 0, 8, NULL) < 0) {
printk(KERN_DEBUG"error in ACMD44 %d\n",
i);
@@ -1581,9 +1571,6 @@ static int mmc_blk_probe(struct mmc_card
md->disk->disk_name, mmc_card_id(card), mmc_card_name(card),
cap_str, md->read_only ? "(ro)" : "");
- if (mmc_blk_alloc_parts(card, md))
- goto out;
-
mmc_set_drvdata(card, md);
mmc_fixup_device(card, blk_fixups);
file:746c5db7cbba6c5c9d5315eefd6f6f5fd56df2cb -> file:4f94eefea9989fb18ffeb16a9768d78f5fde5b15
--- a/drivers/mmc/card/cprmdrv_samsung.c
+++ b/drivers/mmc/card/cprmdrv_samsung.c
@@ -55,9 +55,12 @@ static int mmc_wait_busy(struct mmc_card
}
static int CPRM_CMD_SecureRW(struct mmc_card *card,
- unsigned int command, unsigned int dir,
- unsigned long arg , unsigned char *buff, unsigned int length)
-{
+ unsigned int command,
+ unsigned int dir,
+ unsigned long arg,
+ unsigned char *buff,
+ unsigned int length) {
+
int err;
int i = 0;
struct mmc_request mrq;
@@ -98,8 +101,8 @@ static int CPRM_CMD_SecureRW(struct mmc_
memset(&data, 0, sizeof(struct mmc_data));
- data.timeout_ns = 100000000;
- data.timeout_clks = 0;
+ data.timeout_ns = 100000000;
+ data.timeout_clks = 0;
data.blksz = length;
data.blocks = 1;
data.flags = dir;
@@ -139,15 +142,12 @@ static int CPRM_CMD_SecureRW(struct mmc_
printk(KERN_DEBUG"\n");
if (cmd.error) {
- printk(KERN_ERR
- "%s ] :: cmd.error = [ %d ]\n ",
- __func__, cmd.error);
+ printk(KERN_DEBUG "%s]cmd.error=%d\n ", __func__, cmd.error);
return cmd.error;
}
- if (data.error) {
- printk(KERN_ERR
- "%s ] :: data.error = [ %d ]\n ",
- __func__, data.error);
+
+ if (data.error) {
+ printk(KERN_DEBUG "%s]data.error=%d\n ", __func__, data.error);
return data.error;
}
@@ -161,9 +161,12 @@ static int CPRM_CMD_SecureRW(struct mmc_
}
static int CPRM_CMD_SecureMultiRW(struct mmc_card *card,
- unsigned int command, unsigned int dir,
- unsigned long arg , unsigned char *buff, unsigned int length)
-{
+ unsigned int command,
+ unsigned int dir,
+ unsigned long arg,
+ unsigned char *buff,
+ unsigned int length) {
+
int err;